zoukankan      html  css  js  c++  java
  • ms2

    #

    准备:
    robots
    UA  池
    图片懒加载
    cookie
    IP
    ajax
    js 加密(js逆向  字体加密/大众点评/  base64 md5 AES python复写 要不就是第三方库执行js代码)
    验证码  云打码/超级鹰/极验缺口操作
    
    
    模拟浏览器 -- selenium  动作链 -- chrome无头
    
    解析工具 -- xpath bs4 正则 pyquery
    
    抓包工具 -- fiddler mitproxy
    
    测试工具 -- postman
    
    ua  手机端
    app text/plain
    
    
    scrapy -基础-
        scrapy startproject name
        cd  name
        scrapy genspider sname xxx.com
        scrapy crawl sname
    - 全量数据获取  -   链接提取器/规则解析器
        scrapy startproject name
        cd  name
        scrapy genspider -t crawl spi xxx.com  # 基于CrawlSpider类
        scrapy crawl spi
    
    基于终端指令的 // scrapy crawl first -o qiubai.csv   #指定文件类型有要求.json .csv
    基于管道的    // 定义管道类   注册管道类 不同管道类之间return item
    
    
    # 爬虫:   发请求,解析数据
        #将url封装请求对象,引擎,调度器(过滤器(去重) 队列(容器 过滤后的请求对象)) 先进先出 引擎 下载器 引擎 spider.response 解析数据 引擎 管道 持久化
    # 管道:   接收item,
    # 调度器:
    # 下载器: 去互联网请求    
    #     下载中间件作用:拦截请求和响应
    #       -拦截请求:
    #         1 篡改请求头UA UA池,随机random.choice()
    #         2 设置相关请求对象的代理IP(process_exception中)
    # 引擎(核心): 数据流处理,处理事务
    # POST请求的发送:
    #   重写def start_requests(self):
    #       yield scrapy.FormRequest(url,callback,formdata)
    #   scrapy 默认是自己处理cookie的, settings.py里面COOKIES_ENNABLE=False
    # # 日志等级
    #   settings.py 里面 LOG_LEVEL='ERROR'
    # # 日志路径
    #   settings.py 里面 LOG_FILE = 'path'
    # # 请求传参的应用场景:
    #   爬取和解析的数据不在同一张页面上面
    #   在请求方法中使用meta(字典)参数,该字典会传递参数给回调函数
    #     回调函数接收meta:response.meta['key']
    settings.py 里面
    LOG_LEVEL = ERROR
    ROBOTSTXT_OBEY = False
    USER_AGENT = 'Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/69.0.3497.81 Safari/537.36'
    ITEM_PIPELINES = {
       
    }
  • 相关阅读:
    问题14:如何拆分含有多种分隔符的字符串
    问题15:如何判断字符串a是否以字符串b开头或结尾
    问题16:如何调整字符串中文本的格式
    第三方支付公司之快钱
    js实现回调功能实例
    oracle查看未提交事务
    Tomcat错误之java.lang.OutOfMemoryError:PermGen space解决方案
    oracle错误之未知的命令开头imp忽略了剩余行解决方案
    修改easyui日期控件只显示年月,并且只能选择年月
    数据库三范式大总结
  • 原文地址:https://www.cnblogs.com/zhangchen-sx/p/11247256.html
Copyright © 2011-2022 走看看