需求:一个需要的登录的网页,对效率有需求,需多线程爬取 登录网页我只会 selenium 模拟,写不了多线程。还有些其他细节问题,故有偿求指点
q:864921462
1
ljc864921462 OP 价格详谈,预期 200,如果能提供更多帮助,可加
|
2
yingxiangyu 2020-03-22 13:15:15 +08:00
selenium 也可以多窗口同时爬,一个窗口登陆后把 cookie 在其他窗口同步下就可以了,一般都能解决,除非服务器端做了访问频率限制
|
3
chzb 2020-03-22 23:43:12 +08:00 via Android
你可以不用多线程,试试异步,如果单主机跑用 pyputeer,多个爬取试试 splash
|
4
zhanghelin 2020-03-23 11:46:25 +08:00
用 selenium 登陆后,记录 cookie,在用多线程的方式。
|
5
freakxx 2020-03-23 16:59:52 +08:00
把过程 切分成
登陆 + 爬取 + 清洗 登陆:做一个 cookies 池,登陆完将 cookies 存起来,如果笨点,手动去收集也可以 爬取:做一个待爬取列表,N 线程 = 取出 N 个链接, 每次从 cookies 池捞个上来 + 捞个代理 ip 上来(如果需要的话),爬取成功就继续走,爬取失败,如果是 cookies 失效了,扔掉。 |
6
warcraft1236 2020-03-23 17:22:30 +08:00
对效率有要求不应该关注多线程,应该关注分布式,部署到不同的机器上。或者关注高匿代理,要不然你的 ip 迟早被 ban
|
7
zhiguang 2020-03-23 17:22:35 +08:00
多用阻塞队列
|