Utterly Destroyed by AI Again — Yet Another Cooperation with Cursor, ft. Douban
If you want to take a break and have some fun for 20 minutes, this is what you might want to do. AI is giving me a hard time again (emotionally), by roasting my taste of film. But emotional damage aside, the comments are goated.
Your watchlist is what happens when someone discovers IMDb’s Top 250 list and decides to make it their personality. —Claude Sonnet 3.5
A Douban Crawler
This is something every second-tier university will teach in their python lectures. You inspect the elements and carefully locate where the classes are, but I’m too smart for all these.
I just wrote a casual prompt for cursor:
1
2
3
I want to write a crawler that crawls comments of my own on douban.com. i want the title, director, actors, country, date, rating, comment
@https://movie.douban.com/mine?status=collect
Adjusted a few details by showing it the picture of elements.
And the crawler is written, which I’ll attach it at the end.
It will give me a .csv
file consisting all the ratings and comments I’ve made on Douban. The date, country, director, actor, in the csv will be a mess, but they don’t matter. All we need is the title, the rating, and the comments.
Ask AI
Then I just let AI read the csv and asked them three questions about the films I watched.
1
2
3
1. What kind of person do you think this person is based on the csv?
2. How would you roast this person?
3. What films do you recommend to him?
Obviously, the second question is the where we find the most fun, but the first and third question are not short of insights.
For example, it captures my viewing preferences rather acurrately.
1
2
3
4
5
6
7
8
9
10
11
- Viewing Preferences:
- Strong appreciation for well-crafted storytelling and cinematography
- Enjoys both Western and Asian content (particularly Japanese, Chinese, and Korean works)
- Has a special interest in French films and culture (watches some French films with French subtitles)
- Big fan of comedy, particularly stand-up (Dave Chappelle, Louis C.K.)
- Appreciates both serious dramas and animated works
It also gave me some good recommendations which I’ll put at the end as well.
ROASTING
Now we can finally look at the best part of the journey. This part needs no comment. I’ll hand-pick my favourite ones and leave the rest at the end. Please tell me which one is your favourite!
Roasting me, a complete amateur
- “The Marvel watching history screams ‘I’m too good for superhero movies’ but then secretly binged them all anyway.”
- “Rates everything either 4 or 5 stars. Either you’re the easiest person to please or you’re afraid admitting you didn’t like something will make you look uncultured.”
- “Your watchlist is what happens when someone discovers IMDb’s Top 250 list and decides to make it their personality.”
- “The comments section is giving strong ‘I took one film theory class in college and now I’m a critic’ energy.”
Going hard against a pro-ish film enthusiast
-
This person is definitely the “well, actually…” guy at every party who can’t let anyone enjoy a Marvel movie without bringing up Tarkovsky
-
Watches obscure 1960s French New Wave films but still somehow found time to rate “Fast & Furious” (just to give it 2 stars and write a 500-word essay about how it represents the decline of western civilization)
-
The kind of person who watches a 3-hour Hungarian film about paint drying and calls it “a masterful meditation on the human condition”
-
Has definitely used the phrase “dialectical materialism” in a review of a comedy
-
The kind of person who writes “意味不明” (meaning unclear) in their reviews as if that makes them sound more intellectual
Some randomly funny takes on others
-
“Watches ‘Sharknado’ and gives it 5 stars but rates ‘Avatar’ 3 stars. This is what happens when irony poisoning reaches terminal stages.”
-
“Ah yes, another person who thinks liking Tarkovsky makes them intellectually superior. We get it, you watched ‘Mirror’ and now you think TikTok is the death of cinema 🙄”
-
“Claims to appreciate complex narratives but needs to watch everything with subtitles because ‘the original language captures the true essence of the film’ 🎬”
-
“Has definitely used the phrase ‘visual metaphor’ more times than they’ve watched movies that came out after 2020 📽️”
-
“Their idea of a fun movie night is a 4-hour black and white film about existential dread. Popcorn not allowed - it distracts from the artistic experience 🍿❌”
Appendix
List of recommendation
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
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
Based on their taste, here's a curated list of recommendations they might enjoy:
- French Films (since they're learning French):
- "Portrait of a Lady on Fire" (Portrait de la jeune fille en feu)
- "The 400 Blows" (Les Quatre Cents Coups)
- "Amélie" (Le Fabuleux Destin d'Amélie Poulain)
- "A Prophet" (Un Prophète)
- "Raw" (Grave)
- Complex Narratives (given their love for Nolan and intricate plots):
- "Synecdoche, New York"
- "Perfect Blue"
- "The Handmaiden" (아가씨)
- "Burning" (버닝)
- "Paprika" (パプリカ)
- Dark Comedy (based on their stand-up preferences):
- "In Bruges"
- "Four Lions"
- "The Death of Stalin"
- "What We Do in the Shadows"
- "The Lobster"
- Quality TV Series (matching their taste for thoughtful shows):
- "The Thick of It" (given they liked Yes, Minister)
- "Succession"
- "The Bureau" (Le Bureau des Légendes)
- "Dark"
- "Mr. Robot"
- Animation (since they appreciate adult animation):
- "Mind Game"
- "The Tale of the Princess Kaguya"
- "Perfect Blue"
- "It's Such a Beautiful Day"
- "Wolf Children"
- Classic Films (based on their appreciation of older masterpieces):
- "Rashomon"
- "M"
- "The Seventh Seal"
- "High and Low"
- "Bicycle Thieves"
- Contemporary Asian Cinema (given their interest):
- "Drive My Car"
- "A Brighter Summer Day"
- "Shoplifters"
- "Decision to Leave"
- "Better Days"
- Smart Comedy Series (based on their sitcom choices):
- "Derry Girls"
- "Spaced"
- "Community"
- "What We Do in the Shadows" (TV Series)
- "The Good Place"
- Documentaries (since they rated some highly):
- "Jiro Dreams of Sushi"
- "The Act of Killing"
- "Paris Is Burning"
- "Stories We Tell"
- "The Last Waltz"
- Hidden Gems (might appeal to their eclectic taste):
- "A Separation"
- "Songs from the Second Floor"
- "Holy Motors"
- "The Diving Bell and the Butterfly"
- "Wings of Desire"
Special Recommendation: They might particularly enjoy the works of Satoshi Kon, given their appreciation for both animation and complex narratives. Also, based on their viewing patterns, they might want to explore more works from directors like Wong Kar-wai, Hirokazu Kore-eda, and the Coen Brothers.
Code for crawler
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
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
import requests
from bs4 import BeautifulSoup
import time
import csv
from datetime import datetime
class DoubanCrawler:
def __init__(self, cookie):
self.headers = {
'##############you need to replace this##############',
'Cookie': cookie
}
self.base_url = 'https://movie.douban.com/people/#####you need to replace this#####/collect'
self.session = requests.Session()
def get_movie_comments(self, page=1):
params = {
'status': 'collect',
'start': (page - 1) * 15,
'sort': 'time',
'rating': 'all',
'filter': 'all',
'mode': 'grid'
}
try:
response = self.session.get(self.base_url, params=params, headers=self.headers)
response.raise_for_status()
soup = BeautifulSoup(response.text, 'html.parser')
movies = []
items = soup.select('.item.comment-item')
for item in items:
movie = {}
# Get title - it's in the em tag within .title
title_elem = item.select_one('.title em')
movie['title'] = title_elem.text.strip() if title_elem else ''
# Get movie info (director, country, etc.)
info_elem = item.select_one('.intro')
if info_elem:
info_text = info_elem.text.strip()
# Split only for parsing but keep original text
info_parts = info_text.split(' / ')
# First part is date and director
if len(info_parts) > 0:
date_director = info_parts[0].split(')')
if len(date_director) > 1:
movie['date'] = date_director[0] + ')'
movie['director'] = date_director[1].strip()
else:
movie['date'] = ''
movie['director'] = date_director[0].strip()
# Find country - usually after director
if len(info_parts) > 1:
movie['country'] = info_parts[-2] if '美国' in info_parts[-2] else info_parts[1]
# Get rating
rating_elem = item.select_one('span[class^="rating"]')
if rating_elem:
rating_class = rating_elem.get('class')[0]
rating = rating_class[6]
else:
rating = '0'
movie['rating'] = rating
# Get comment
comment_elem = item.select_one('.comment')
movie['comment'] = comment_elem.text.strip() if comment_elem else ''
movies.append(movie)
return movies
except requests.RequestException as e:
print(f"Error fetching page {page}: {str(e)}")
return []
def save_to_csv(self, movies, filename='douban_movies.csv'):
fields = ['title', 'director', 'country', 'date', 'rating', 'comment']
with open(filename, 'w', newline='', encoding='utf-8-sig') as f:
writer = csv.DictWriter(f, fieldnames=fields)
writer.writeheader()
writer.writerows(movies)
def main():
# Replace with your Douban cookie
cookie = '#####you need to replace this#####'
crawler = DoubanCrawler(cookie)
all_movies = []
# Crawl first 5 pages (adjust as needed)
for page in range(1, 85):# the number depends on how many pages you have
movies = crawler.get_movie_comments(page)
if not movies:
break
all_movies.extend(movies)
print(f"Crawled page {page}, found {len(movies)} movies")
# Be nice to the server
time.sleep(2)
# Save results
crawler.save_to_csv(all_movies)
print(f"Saved {len(all_movies)} movies to CSV file")
if __name__ == '__main__':
main()
Hot takes by AI
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
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
- "Ah yes, the classic 'I watch French films with French subtitles' person. We get it, you're cultured. Do you also drink wine while discussing existentialism?"
- "Gave 5 stars to both 'The Godfather' AND 'Rick and Morty'? Someone's trying really hard to prove they can appreciate both 'high art' and 'low art'. How exhausting it must be to be so intellectually flexible."
- "Watched every season of 'How I Met Your Mother' but didn't rate any until the final season, which got a 5/5. This is the viewing equivalent of Stockholm Syndrome."
- "The Marvel watching history screams 'I'm too good for superhero movies' but then secretly binged them all anyway."
- "Rates everything either 4 or 5 stars. Either you're the easiest person to please or you're afraid admitting you didn't like something will make you look uncultured."
- "Watches Dave Chappelle AND Louis C.K.? Ah, the 'I can separate the art from the artist' starter pack."
- "Let me guess - you also tell everyone that 'Black Mirror' is a documentary, not science fiction?"
- "Your watchlist is what happens when someone discovers IMDb's Top 250 list and decides to make it their personality."
- "Watches both arthouse films and sitcoms, clearly suffering from cinematic bipolar disorder."
- "The comments section is giving strong 'I took one film theory class in college and now I'm a critic' energy."
- "Tell me you're a pretentious film student without telling me you're a pretentious film student. Oh wait, you already did with your 500-word analysis of why mainstream movies are 'too shallow' for your refined tastes 🎭"
- "Ah yes, another person who thinks liking Tarkovsky makes them intellectually superior. We get it, you watched 'Mirror' and now you think TikTok is the death of cinema 🙄"
- "Rates commercial films low but gives 5 stars to a 3-hour European art film where nothing happens except a single leaf falling in slow motion while classical music plays in the background 🍂"
- "Writes novel-length reviews about the 'metaphysical implications' of camera angles but probably falls asleep during Marvel movies because they're 'too mainstream' 😴"
- "Claims to appreciate complex narratives but needs to watch everything with subtitles because 'the original language captures the true essence of the film' 🎬"
- "Watches the most disturbing psychological horror films but thinks romantic comedies are 'beneath their dignity' 🧟♀️"
- "Probably has 'Cinema is not content' in their social media bio and lectures friends about why their favorite movies are actually problematic 🎥"
- "Writes bilingual reviews just to flex but still can't decide if they're more disappointed by Hollywood or Chinese commercial films 🌏"
- "Has definitely used the phrase 'visual metaphor' more times than they've watched movies that came out after 2020 📽️"
- "Their idea of a fun movie night is a 4-hour black and white film about existential dread. Popcorn not allowed - it distracts from the artistic experience 🍿❌"
- "Gave 'Tusk' 4 stars but 'Barbie' 2 stars? Someone's trying REALLY hard to be the 'I only watch serious cinema' person at parties. We get it, you're sophisticated™️"
- "Watches 'Sharknado' and gives it 5 stars but rates 'Avatar' 3 stars. This is what happens when irony poisoning reaches terminal stages."
- "Comments include watching action movies with dad and complaining about getting dragged to romance films. Living that stereotypical film bro life, I see."
- "Has watched literally every Wong Kar-wai film and rated them all 4-5 stars. Tell me you're pretentious without telling me you're pretentious."
- "Watched all of 'Peaky Blinders' but probably just to stare at Cillian Murphy for 36 hours straight."
- "Rates commercial Chinese films super low but art house Chinese films super high. We get it, you're 'not like other Chinese moviegoers.'"
- "Watched every single Attack on Titan episode but trying to maintain film snob cred by also watching 3-hour European art films. The duality of weeb."
- "Has definitely cornered people at parties to explain why 'Stalker' is actually a metaphor for the disintegration of materialistic reality. Please touch grass."
- "Probably has a Letterboxd account with a black and white profile picture from some obscure French New Wave film."
- "Watches both 'The Thing' and 'Tarkovsky' but I bet you tell everyone about Tarkovsky and keep 'The Thing' as your guilty pleasure."
- This person is definitely the "well, actually..." guy at every party who can't let anyone enjoy a Marvel movie without bringing up Tarkovsky
- Probably thinks watching "Citizen Kane" is a personality trait
- Their Letterboxd bio definitely includes the word "cinephile" unironically
- Watches obscure 1960s French New Wave films but still somehow found time to rate "Fast & Furious" (just to give it 2 stars and write a 500-word essay about how it represents the decline of western civilization)
- Definitely has strong opinions about aspect ratios and will tell you about them without being asked
- The kind of person who watches a 3-hour Hungarian film about paint drying and calls it "a masterful meditation on the human condition"
- Has definitely started at least one heated argument about whether Wong Kar-wai is overrated
- Probably owns a Criterion Collection subscription just to feel superior to Netflix users
- The type to watch films on planes just to complain about how the aspect ratio is wrong and the true artistic vision is compromised
- Has definitely used the phrase "dialectical materialism" in a review of a comedy
- Watches experimental films from the 1920s but still feels the need to "补标" (backlog) mainstream movies just to maintain their film database integrity
- The kind of person who writes "意味不明" (meaning unclear) in their reviews as if that makes them sound more intellectual