请稍等 ...
×

采纳答案成功!

向帮助你的同学说点啥吧!感谢那些助人为乐的人

老师,我项目需要每次request都要selenium做代理,那这样,我怎么把页面信息传入response后,还从操作浏览器呢

老师,我项目需要每次request都要selenium做代理,那这样,我怎么把页面信息传入response后,还从操作浏览器呢

正在回答 回答被采纳积分+3

1回答

bobby 2021-04-29 19:15:02

课程中讲解了中间件的,你直接写一个middleware,直接拦截request请求然后使用selenium获取,原本这个request是要发送给downloader的,但是你拦截了并且直接return 了response了,那么原本应该交给downloader下载的就不会交给了,直接返回reponse就进入了你自己的处理逻辑了

0 回复 有任何疑惑可以回复我~
  • 提问者 慕工程0405147 #1
    self.brower.quit(),我在parse下,是这样使用的,我没有照搬视频的那个模式,我是每个request都会去打开一个新的页面,因为使用的selenium的代理,如果按照视频的那个模式,后续每个url的ip都会是同样的
    回复 有任何疑惑可以回复我~ 2021-04-30 17:16:26
  • bobby 回复 提问者 慕工程0405147 #2
    那你把你的主要代码的核心源码截图我看看呢
    回复 有任何疑惑可以回复我~ 2021-05-03 21:29:08
  • 提问者 慕工程0405147 回复 bobby #3
    老师,我现在是代码在本地无论是命令行模式,还是ide去执行,都是正常,但是就是到了线上centos7里,scrapy就执行不起来selenium,但是在线上直接调用selenium又是正常的....
    回复 有任何疑惑可以回复我~ 2021-05-08 14:39:54
问题已解决,确定采纳
还有疑问,暂不采纳
意见反馈 帮助中心 APP下载
官方微信