python dict.update(python如何重写start_requests方法)
导读:说明...
说明
1 、在scrapy中 ,start_url是由start_requests处理的 ,通过重写这种方法 ,start_url可以携带请求头信息 。
2 、cookie不能放在scrapy中的headers中 ,在构建请求时有专门的cookies参数 。
可以接收字典形式的cookie 。可能需要在settings中设置ROBOTS协议和USER_AGENT 。
实例
importscrapy classGit1Spider(scrapy.Spider): name=git1 allowed_domains=[github.com] start_urls=[https://github.com/GitLqr] defstart_requests(self): """ 重写start_requests ,发送携带cookies的Request 。 默认start_requests只是普通的get请求 ,不会携带自定义的头信息 """ url=self.start_urls[0] temp=_octo=GH1.1.1045146750.1615451260;_device_id=cd8d64981fcb3fd4ba7f587873e97804 #把cookies字符串转成字典 cookies={data.split(=)[0]:data.split(=)[-1]fordataintemp.split(;)} yieldscrapy.Request( url=url, callback=self.parse, cookies=cookies ) defparse(self,response): print(response.xpath(/html/head/title/text()).extract_first())以上就是python重写start_requests方法 ,希望对大家有所帮助 。更多Python学习指路:Python基础教程
创心域SEO版权声明:以上内容作者已申请原创保护,未经允许不得转载,侵权必究!授权事宜、对本内容有异议或投诉,敬请联系网站管理员,我们将尽快回复您,谢谢合作!