刚接触 python 的菜鸟一枚,想写个爬虫批量下载电影,但是用下载图片的方法没办法下载电影了。 求指点~~~ 另外多线程的话应该怎么搞。。。
for movie in movies:
print(movie.title)
resource = urllib.request.urlopen(movie.downloadUrl)
movieData = open(movie.title, 'wb')
movieData.write(resource.read())
movieData.close()
1
dzxx36gyy 2017-08-19 18:17:49 +08:00 via Android 2
我觉得你后台跑个 aria2 把链接用 rpc 添加任务得了……
|
2
UnisandK 2017-08-19 18:19:07 +08:00 3
你这么个问法我觉得磁力和电驴你要自己写完实现是不大可能了。。直接调用其他下载工具吧
|
3
expy 2017-08-19 18:26:40 +08:00 1
有多大硬盘存?那些爬虫站一般也就存个链接吧。
|
4
15015613 2017-08-19 18:28:33 +08:00 via Android 1
磁力链的话好办,直接调用 transmission (或者 arias)下载就可以了。
电驴,不知道,你可以看看 amule 什么的客户端有没有什么 API 迅雷,喵喵喵~~~ 另外,多线程,一头雾水。 本来便是 p2p,没有固定的资源,不存在多不多线程的问题。 |
5
chinvo 2017-08-19 18:29:21 +08:00 1
磁链和电驴都能直接 aria2,迅雷的链接需要解码成 http/ftp 链接再交给 aria2
aria 有 JSONRPC ( HTTP ) 接口 |
11
chinvo 2017-08-19 22:42:23 +08:00 1
@magic3584 #8 如果你愿意自己实现,任何一门语言都能接入任何一个 p2p 网络,反正 protocol 都是开放标准。
|
12
UnisandK 2017-08-19 23:29:22 +08:00 2
@magic3584 是这样,磁力( BT )和电驴是两种不同的 P2P 下载协议,不像 HTTP 协议那样你一句就能拉下来,你得用 Python 分别实现两种协议的客户端才行
看你帖子的内容感觉对俩协议都一无所知,感觉你真写不出来两个完整的客户端实现 Python 可以万能,但你不是万能的啊老铁 |
13
bucky 2017-08-20 00:01:42 +08:00 1
要不是大家提醒你差点写出个下载软件来
|
14
aaronzjw 2017-08-20 00:07:30 +08:00 1
如果不是一些奇怪的视频,就用 you-get 下载吧
|
15
NoAnyLove 2017-08-20 00:10:06 +08:00 1
这种时候,你只需要遵循 KISS 原则就好了,有现成的东西当然就是拿来用咯
|
16
FanWall 2017-08-20 00:10:08 +08:00 via Android 1
很多 sdk 的
|
17
expy 2017-08-20 00:18:40 +08:00 1
@magic3584 BT 开源实现比较多,比如 libtorrent 库 http://www.libtorrent.org/python_binding.html
emule 只能用客服端了,emule/amule/MLDonkey. 迅雷死链的话只能用它家离线。 |
18
20015jjw 2017-08-20 00:36:52 +08:00 via Android 1
我进来前以为是个大牛...
|
22
OpenJerry 2017-08-20 09:49:48 +08:00 1
我下载图片都是直接 os.system('aria2c xxx') 是不是太弱了
|
23
Loyalsoldier 2017-08-20 10:56:38 +08:00 1
是 very。
而且没有 very sorry 的说法,只有 really sorry |
24
Jackeriss 2017-08-20 11:21:03 +08:00 via iPhone 1
迅雷有添加任务的 API
|
25
msg7086 2017-08-20 11:50:03 +08:00 1
@Loyalsoldier vely 可能是印度人的口音……
|
26
sola97 2017-08-20 13:20:27 +08:00 1
下载图片不如 wget -i
|
28
magic3584 OP @Loyalsoldier @msg7086 You get it!
|
31
yangjiegang 2017-08-20 16:24:18 +08:00
还是调用第三方软件吧省心
|
34
popbones 2017-08-21 05:25:57 +08:00
参考一下 Sonarr 的设计吧
|
35
popbones 2017-08-21 05:33:30 +08:00 1
非要 Python 的话,去看一下 Sick Beard
|