1
sykp241095 2012-07-17 10:35:18 +08:00
可以,但没有这么做的
|
2
zzWinD OP @sykp241095 谢谢你的回复,
请问什么方法才更适合我的需求? |
3
sykp241095 2012-07-17 10:48:45 +08:00
You need a standalone consumer.
|
4
judezhan 2012-07-17 11:55:53 +08:00
...我实在是没明白你的意思。一个cronjob+shell脚本就搞定了吧?还是我曲解了你的意思?
|
5
shellex 2012-07-17 12:25:20 +08:00
@zzWinD 的意思是需要一个web介面提交下载地址,让呼叫一个下载程序去下载。
如果是我的话,我也会用一个独立程序来处理下载的事宜。你可以让这个下载程序访问数据库获得需要下载的任务,也可以让那个web暴露一个API提供任务给下载程序。 |
6
zzWinD OP |
7
messense 2012-07-17 15:31:55 +08:00
也许需要用 python-rq 或者 celery 这样的Task Queue?
|
8
shellex 2012-07-17 16:04:24 +08:00
@zzWinD 这和webpy无关。web部分也不应该处理这种任务。如果是Linux配合cron或者自己做个daemon就可以了。
|
9
arzon 2012-07-17 16:11:06 +08:00
@zzWinD 典型的生产者-消费者的需求. 可以用线程+队列解决.
随应用服务器初始化一个消费者线程和生产队列. 提交地址时将地址放入队列. 消费者线程依次从队列中取出地址进行下载保存. |
10
jamiesun 2012-07-17 23:26:10 +08:00
|
11
zzWinD OP |
12
Archangel_SDY 2012-07-18 11:51:26 +08:00
做过一个类似的, 前台用js bookmarklet提交请求, 后台用celery处理下载, 队列用rabbitmq.
webpy的话用在处理前台请求和管理页比较合适. |
13
lanbing 2012-07-18 15:10:09 +08:00
|
14
ilessd 2012-07-18 15:14:11 +08:00
可以參考
https://chrome.google.com/webstore/detail/hgndabfigagmapbcgdcmbcbmemkchlid?hl=zh-TW 使用 aria2c 的 rpc server |
15
ipconfiger 2012-07-18 16:10:27 +08:00
$sudo pip install celery
一切没烦恼 |
16
cyberscorpio 2012-07-18 20:40:48 +08:00
一般来说,可能你得提交两个地址。除了图片的 URL 之外,还要 HTTP_REFERER,否则很多网站会返回 403...
|
17
jamiesun 2012-07-19 22:17:19 +08:00
|
18
shiweifu 2012-07-20 10:32:04 +08:00
cronjob + Python + 一个kv(k是文件地址,v是保存的路径)
|
19
bigzhu 2012-07-24 10:34:22 +08:00
我做的 http://digzhu.com 其实有部分功能用到你说的这个.
我这个站是用来推荐网站的. 输入 url,然后抓取站点截图. 正好也是用 web.py 开发的. 确实得用另外的程序来抓. python 就判断下抓过没有,还有转换下图片大小等杂事. |
22
darklowly 2012-09-22 19:56:06 +08:00
直接创建一个后台线程就可以了。
|
23
mckelvin 2012-09-22 20:04:12 +08:00
如果LZ嫌cron麻烦的话可以tmux开一个panel直接写轮询呀
|
24
clowwindy 2012-09-22 20:07:44 +08:00
|
25
xi4nyu 2012-09-25 10:00:55 +08:00
异步+队列.
|