如何导出豆瓣所有的8~9分的电影?

2980条记录了,如何一键导出来呢?因为很多都折叠起来,需要展开

我倒是感觉你这个需求更适合青蛙的做法 豆瓣上不感兴趣的也标为“已看过”
如果你希望把不感兴趣的和真正已看过的区分 不如在本地维护一个已看过的列表

urls.join(‘\n’)

出现了错误,是符号么?

我手机打的,换成英文单引号,urls.join(‘\n’)

不!我不用豆瓣来维护,而是使用Notion来维护,Notion支持更多的元数据。

好处是,我非常容易过滤与查找自己所需要的电影。

毕竟一个灵活的数据库很方便哩!

2 个赞

返回的结果密密麻麻的:

不像前面经过整理的,一条一条的容易粘贴到notion中:

粘贴到sublime,我这个菜鸟不知道如何整理:

输入这个命令后 urls.join(‘\n’)

好像停止抓取了,这个命令会停止抓取的么?

先完成抓取,然后用这个很短的命令拼接,不过么……我这两天也发现这样拼接并不能正确转义,好奇发生了什么,印象中以前是可以的。

不过你把 \n 换成一些特殊字符,把拼接后的内容复制到文本编辑器里来一次查找替换也行

我认真看了,然后好像有点明白了,那个\n应该是换行吧,但是没有换行,好像要替换一下,我试试正则能不能(但我正则也很差),摸石头过桥试试

我刚测试了,不用麻烦,其实这个看起来很乱的结果只是显示问题,复制到编辑器里 \n 就是换行了

输出后不要直接copy啊,得右键“复制字符串内容”

你是复制到哪个编辑器里的?我复制到Notion与sublime没有断行。

我用了两次替换,8~9分的电影记录导出来了,共3120条,不知道有没有加载全

明天再导出一次试试

链接: https://pan.baidu.com/s/1xJo3uV1w4BEZLo5_XibHsQ 密码: g3iu
–来自百度网盘超级会员V6的分享

最后感谢 @Hoothin @Debatrix !!!

我在上面点右键,没有『复制字符串内容』的选项

import json
import time
import urllib.request

url = 'https://movie.douban.com/j/new_search_subjects?sort=U&range=8,9&tags=%E7%94%B5%E5%BD%B1&start='

herders = {
    'User-Agent':
    'Mozilla/5.0 (Windows NT 6.1;WOW64) AppleWebKit/537.36 (KHTML,like GeCKO) Chrome/45.0.2454.85 Safari/537.36 115Broswer/6.0.3',
    'Referer': 'https://movie.douban.com/',
    'Connection': 'keep-alive'
}

num = 0
data = []
while True:
    req = urllib.request.Request('{}{}'.format(url, num), headers=herders)
    response = urllib.request.urlopen(req)
    html = json.loads(response.read().decode('utf8'))['data']
    if len(html) > 0:
        data = data + ['{},{}\n'.format(x['title'],x['url']) for x in html]
    else:
        break

    num = num + 20
    time.sleep(50)

with open('douban_movie.csv', 'w') as f:
    for line in data:
        f.write(line)

我看了一下你的表格 是需要title和url吧 这个代码能直接保存为csv

不过是python3的代码 刚才试图改python2想起来有中文编码问题所以放弃了(这个可能也有点问题…… 不过在sublime里改一下应该就好了)

所以,mac自带的python不行,我要卸载,安装python3才可以吧?

对 如果你对python2没有其他需求的话 卸载重装就行
不过既然你之前装过2说不定就有需求……所以说脚本可能还是js之类的更方便……

哭!!

让我试试卸载python2,再装python3,希望我能成功!

加油!我能成功!

不用卸载,2和3可以共存

啊对 改环境变量就行 python3可以就叫python3的 甚至不干扰之前装的东西……