zoukankan      html  css  js  c++  java
  • 潭州课堂25班:Ph201805201 爬虫高级 第六课 sclapy 框架 中间建 与selenium对接 (课堂笔记)

     

     

     因为每次请求得到的响应不一定是正常的,

     

    也可以在中间建中与个类的方法,自动更换头自信,代理Ip,

    在设置文件中添加头信息列表,

     在中间建中导入刚刚的列表,和随机函数

     

    class UserAgentMiddleware(object):
        def process_request(self, request, spider):
            # 随机头信息,
            UA = random.choice(UserAgent_list)
            request.headers['User-Agent'] = UA
    
    class ProxyMiddleware(object):
        def process_request(self, request, spider):
            # 代理
            proxy = {
                'http':'http:ip.post'
            }
            request.meta['proxy'] = 'http:ip.post'
            pass
    

      

    scrapy与 selenium

      以 历史空气质量数据 网站为列:

      https://www.aqistudy.cn

    建一项目 scrapy startproject raea

     创建运行文件 scrapy genspider area_1 baidu.com

     

    写好后无法获取数据,是因为 scrapy 无法执行 js 获取数据 ,

    所以要在中间建 中自己写个类,

    在 middlewares 中导入selenium 

     

     里边的类名改成自己写的那个类方法

     

  • 相关阅读:
    爬虫 xpath
    Mongo 基础命令
    大数据 Spark 连接外部资源
    大数据 Spark 异常
    大数据 Spark 安装
    python 对象克隆
    一个Vue表单提交防抖的实用例子
    一个防抖和节流的实用例子
    前端面试100问(1-10)
    每日技术:encodeURI,encodeURIComponent,toFixed
  • 原文地址:https://www.cnblogs.com/gdwz922/p/9770336.html
Copyright © 2011-2022 走看看