一. 数据用js封装可能存在问题

用//text()有的正文匹配不到,可能是转义字符\导致的,直接把转义字符去掉

二. Fiddler中间人改写

https://blog.csdn.net/qq_39551311/article/details/111938853

三. Python调用wasm文件

vm = pywasm.load(“./main.wasm”) # 引入
result = vm.exec(“encode”, [t1, t2]) # 调用方法传入参数

四.乱码

  1. 按照html指定编码还是有部分中文乱码

指定成gbk:rsp.encoding = ‘gbk’

五.scrapy

scrapy网上笔记:https://achang.blog.csdn.net/article/details/122933292
报错:
修改传入的url报错:【Error】Request.url is not modifiable, use Request.replace() instead
不能用赋值的方式修改,要用request.set_url()方法修改
linux安装scrapy后scrapy命令提示找不到:[https://blog.csdn.net/dangsh
/article/details/79613210](https://blog.csdn.net/dangsh_/article/details/79613210)

  1. 异步

scrapy默认启用异步,setting文件里CONCURRENT_REQUESTS设置最大处理数量,默认32

  1. 登录记住cookie

scrapy默认会携带cookie,setting文件里COOKIES_ENABLED可以修改,False为不保存cookie

六. 谷歌浏览器的值python获取

  1. python利用selenium实现chrome中network

https://blog.csdn.net/foemat/article/details/107696113

  1. response header

直接.headers

七. 反爬

  1. selenium过阿里云阿里云无痕验证

阿里云会检测 window.navigator.webdriver是否为True
解决方法:将 window.navigator.webdriver定义为undefined 即可

  1. # 要在get请求执行前修改
  2. self.browser.execute_cdp_cmd("Page.addScriptToEvaluateOnNewDocument", {
  3. "source": """
  4. Object.defineProperty(navigator,'webdriver',{
  5. get:()=>undefined
  6. })
  7. """
  8. })