刷新页面抓包,找到接口,记为接口1

记录爬取信用中国

记录爬取信用中国

分析请求头部,需要请求参数encryStr和MmEwMD,写请求时发现只需要encryStr,MmEwMD可以不带

在页面上搜索,抓包分析

记录爬取信用中国

发现有接口直接返回encryStr,记为接口2

分析请求头部只需要输入的关键字

记录爬取信用中国

 

可以看出encryStr是加密后的公司名称字符串,接口2通过加密的字符串获得黑名单信息,而接口1通过明文字符串获得加密字符串

所以爬虫思路:

1.输入明文通过接口1获取加密字符串encryStr

2.输入加密字符串通过接口2获取黑名单信息

 

遇到的问题:

1.可能会遇到请求失败、接口调用失败等不能获取数据问题,需要添加重试功能,获取失败公司添加到列表重新获取

2.黑名单数据类型有两类,分别处理

3.数据类型”失信黑名单-法人”可能有多条数据,可以根据案号循环并按照格式生成多条数据,但在保存到数据库时,多条数据自动生成的id一样,只存入了第一条数据,使用md5压缩后的案号作为插入时的id来确保数据可以正常插入

4.有访问频率限制,而且请求速度比较慢,使用代理ip,使用30个协程来处理

 

待改进:

1.代理池https和http混合,网站使用https,且抓到的代理质量不好,需要修改代理池相关代码

2.接口调用失败率较高,失败重试功能不够好,需要重写

3.使用轻量级的requests+协程的方式实现并发,因为访问速度和代理质量,效果不是很好。准备使用scrapy来处理大量数据和异常重试

 

相关文章:

  • 2021-05-29
  • 2021-12-01
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
  • 2021-07-09
  • 2021-12-02
猜你喜欢
  • 2021-07-19
  • 2022-12-23
  • 2022-12-23
  • 2021-11-20
  • 2021-09-19
  • 2021-12-29
  • 2021-12-03
相关资源
相似解决方案