In [1]:
import sys
sys.path.append('../../')
from moviegoer.tables import film_id_from_film_directory, load_film_object
from random import choice
In [2]:
film_id = film_id_from_film_directory()
film_id
Out[2]:
'nine_miles_down_2008'
In [3]:
film_obj = load_film_object(film_id)
film_obj.print_info()
*Film Information*
Title, Release Year: Nine Miles Down (2008)
File Runtime: 01:25:59
Film Runtime (No Credits): 1:20:51

*Technical Details*
Aspect Ratio: 2.35
Avg. Shot Duration: 8.96
Avg. Brightness: 90
Avg. Contrast: 43

*Dialogue Cadence*
Sentences Per Minute: 12
Words Per Sentence 5.32
Questions Per Minute: 2.00
Pct. Questions: 16%

*Emotion*
Pct. Upset Faces: 62%
Laughs Per Minute: 0.22
Profanity Per Minute: 0.05
Words Per Profanity: 1321
Exclamations Per Minute: 1.21
In [4]:
print(len(film_obj.scene_objects))
film_obj.display_scenes()
6
*Plot Context*
Context Themes: Counter({'aquatic': 32})
Potential Common Locations: Counter({'beach': 32})
Descriptors: ['outdoors', 'sitting']
Held Items: Counter({'surfboard with the word': 1})
Active Actions: Counter({'touching': 12, 'writing': 6})
Left Wearing: Counter({'white shirt': 2})
*Plot Context*
Context Themes: Counter({'violence': 5, 'dining': 1})
Descriptors: ['indoors', 'sitting']
Held Items: Counter({'head': 4, 'candle': 2, 'plate with a lit candle': 1, 'object': 1, 'knife': 1})
Active Actions: Counter({'lit': 6, 'lighting': 3})
Right Wearing: Counter({'military uniform': 4})
*Plot Context*
Context Themes: Counter({'intimacy': 31, 'violence': 1, 'dining': 1})
Establishing Shot Locations: Counter({'building': 2})
Named Participants: Counter({'susan': 1, 'tom': 1})
Descriptors: ['indoors', 'standing']
Held Items: Counter({'hand': 4, 'cell phone': 3, 'knife': 1, 'banana': 1, "arm around another man 's neck": 1})
Active Actions: Counter({'kissing': 24, 'touching': 9, 'hugging': 7, 'embracing': 6, 'open': 2, 'hugged': 1, 'cuddle': 1})
Right Wearing: Counter({'tank top': 5, 'brown dress': 2, 'robe': 1})
*Plot Context*
Context Themes: Counter({'violence': 15, 'medical': 6, 'dining': 5, 'drinking': 2})
Potential Common Locations: Counter({'bathroom': 94, 'kitchen': 2, 'bar': 2})
Potential Other Locations: Counter({'hallway': 44, 'doorway': 40, 'field': 32, 'hill': 15, 'building': 9, 'mountain': 6, 'hillside': 2, 'sidewalk': 1})
Establishing Shot Locations: Counter({'building': 8})
Named Participants: Counter({'jack': 1})
Descriptors: ['indoors', 'standing']
Held Items: Counter({'hand': 28, 'piece of paper': 18, 'cell phone': 14, 'book': 8, 'tennis racquet': 5, 'knife': 3, 'baseball bat': 3, 'stick': 3, 'gun': 2, 'glass': 2, 'frisbee': 1, 'shower head with water': 1, 'bar': 1, 'hair dryer': 1, 'baseball bat over his head': 1, 'hair brush': 1, 'bag': 1, 'piece of cloth': 1, 'jacket': 1, 'jacket over his shoulder': 1, 'object': 1, 'curtain': 1, 'wii remote': 1, 'bunch of papers': 1})
Active Actions: Counter({'hanging': 18, 'covers': 9, 'climbing': 9, 'held': 9, 'coming': 7, 'covered': 5, 'parked': 2, 'working': 2, 'falling': 1, 'squatting': 1, 'sink': 1, 'pouring': 1, 'turned': 1, 'covering': 1, 'brushing': 1, 'putting': 1, 'stuffed': 1, 'pulling': 1})
Right Wearing: Counter({'tan shirt': 1})
*Plot Context*
Context Themes: Counter({'violence': 78})
Potential Common Locations: Counter({'bathroom': 49})
Potential Other Locations: Counter({'hallway': 4})
Establishing Shot Locations: Counter({'building': 1})
Named Participants: Counter({'jack': 3})
Descriptors: ['indoors', 'standing']
Held Items: Counter({'gun': 78, 'front': 1, 'hair dryer': 1, 'cell phone': 1})
Active Actions: Counter({'brushing': 14, 'painted': 3, 'open': 2})
Left Wearing: Counter({'yellow shirt': 9, 'tan shirt is staring at the camera': 1, 'tan shirt': 1})
*Plot Context*
Context Themes: Counter({'medical': 44, 'intimacy': 3})
Potential Common Locations: Counter({'hospital': 44})
Establishing Shot Locations: Counter({'building': 3})
Descriptors: ['indoors']
Held Items: Counter({'cell phone': 1})
Active Actions: Counter({'kissing': 3, 'touching': 2})
Right Wearing: Counter({'tan jacket': 24})
Out[4]:
[None, None, None, None, None, None]
In [5]:
film_obj.chart_all_dialogue_emotional_indicators()
In [6]:
film_obj.chart_all_dialogue_shape()
In [7]:
film_obj.chart_all_dialogue_question_proportion()
In [8]:
film_obj.display_color_shots()
In [9]:
rand_scene = None
if film_obj.dialogue_objects:
    rand_scene = choice(film_obj.dialogue_objects)
    rand_scene.display_qna_frames()
In [10]:
if rand_scene:
    rand_scene.display_first_p_sentence_frames()
In [11]:
if rand_scene:
    rand_scene.display_second_p_address_frames()
In [12]:
film_obj.display_laughs()
Out[12]:
[]
In [13]:
film_obj.display_unintelligible_language()
In [14]:
film_obj.display_self_intros()
In [15]:
film_obj.display_other_intros()