我想从下载一些HTML页面http://abc.com/view_page.aspx?ID= 该ID来自一组不同的数字。

我想访问此URL的多个实例,并使用不同的代理IP/端口将文件另存为[ID] .HTML。

我想使用不同的用户代理,并且希望随机化每次下载之前的等待时间。

最好的方法是什么? urllib2? pycURL? curl ?您希望手头的任务是什么?

请指教。谢谢你们!

最佳答案

使用类似:

import urllib2
import time
import random

MAX_WAIT = 5
ids = ...
agents = ...
proxies = ...

for id in ids:
    url = 'http://abc.com/view_page.aspx?ID=%d' % id
    opener = urllib2.build_opener(urllib2.ProxyHandler({'http' : proxies[0]}))
    html = opener.open(urllib2.Request(url, None, {'User-agent': agents[0]})).read()
    open('%d.html' % id, 'w').write(html)
    agents.append(agents.pop()) # cycle
    proxies.append(proxies.pop())
    time.sleep(MAX_WAIT*random.random())

关于python - 随机使用不同的代理和用户代理进行智能屏幕抓取?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/2803737/

10-14 19:33
查看更多