-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathAdd_Movies_To_Airtable.py
70 lines (56 loc) · 1.49 KB
/
Add_Movies_To_Airtable.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
# Add new movie to Airtable spreadsheet w/ IMDB link
import pandas as pd
import metadata_parser
import os
import pyairtable
from pyairtable import Table
from pyairtable import formulas as fo
from pyairtable.utils import attachment
import urllib.request
import os
os.getcwd()
os.chdir('/Users/laurenjackson/Desktop/PYTHON/')
os.getcwd()
############################
# Get & clean movie metadata
############################
url = input('Enter IMDB URL')
page = metadata_parser.MetadataParser(url)
blob = page.metadata
print(blob['og'])
movie = {}
movie = blob['og'].copy()
movie.pop('site_name')
movie.pop('type')
movie.pop('image:height')
movie.pop('image:width')
movie.pop('locale')
movie.pop('locale:alternate')
#####################
# Set table variables
#####################
title = movie['title'][:-14]
print(title)
director = movie['description']
start = director.find('Directed by ')
end = director.find('.')
director = director[start+len('Directed by '):end]
print(director)
link = movie['url']
print(link)
image = movie['image']
print(image)
###################################
# Connect table with pyairtable/API
###################################
base_id = 'appl15niec6bWI348'
table_name = 'Watched Films'
api_key = 'key3Ulbqysr6JTWo8'
table = Table(api_key,base_id,table_name)
############################
# Create new record in table
############################
table.create({'TITLE':title,
'DIRECTOR':director,
'LINK':link,
'POSTER': [attachment(image)]})