爬虫--淘宝登录及生意参谋transit-id和data破解

生意参谋是淘宝商家分析市场行情最常见的工具之一.淘宝为了防爬虫可谓下了不少功夫.
本次为了写一款抓取生意参谋数据的爬虫,真是费了不少很大的劲才破解里面的数据加密.

1. 登录

首先爬虫肯定是自动化抓取,所以登录自然是要自动登录,但是生意参谋的登录跟淘宝的是一模一样的,当你用selenium打开登录的时候就会被淘宝后端验证出来是个机器人。所以登录的话可以采用编译后的chromedriver来驱动chrome,或者使用mitmproxy用中间人的方式拦截服务器发送来的js,修改js里面函数的检测selenium的特征值的方式来登录.

2. transit-id加密

获得登录后的cookie后,如果想发送请求获得还必须在请求头里添加一个transit-id才可以获得响应内容.
如下图:在这里插入图片描述
不过这个笔者目前少量测试,写死一个也能获得响应内容.
如果在浏览器进行debug,会发现这个值是每当前端请求数据的时候,对一个固定字符串做了RSA加密来得到的.所以可以在爬虫里写一个同样的方法获得transit-id.

3. data加密

原以为经过以上两步可以顺利获得结果了,事实证明还是太天真了.查看结果发现的到的是这样的一堆数据:在这里插入图片描述
原来生意参谋后台响应的数据由经过AES加密的,前端展示的是解密后的.
所以,要想获得真正的数据,还需要对数据做AES解密才可以.

运行结果

展示运行结果
在这里插入图片描述


可关注个人公众号,不定时分享一些爬虫案例和技巧
在这里插入图片描述

生意参谋-市场大盘,市场排行爬虫脚本,采用pyppeteer+PIL方式处理数值图片问题,人工登录,并将爬取结果保存为csv文件 脚本截取: import asyncio from pyppeteer import launch from PIL import Image import pytesseract import datetime import time import pandas as pd async def main(): start_time = datetime.datetime.now() print('浏览器初始化……') browser = await launch(headless=False, args=['--disable-infobars',f'--window-size=1366,768']) page = await browser.newPage() await page.setViewport({'width': 1366, 'height': 768}) await page.goto('https://login.taobao.com/member/login.jhtml?redirectURL=https://www.taobao.com/') #从淘宝登录 await page.evaluate( '''() =>{ Object.defineProperties(navigator,{ webdriver:{ get: () => false } }) }''') await asyncio.sleep(30) #人工输入账号密码登录 print('开始登录……') await page.goto('https://sycm.taobao.com/mc/mq/overview?cateFlag=2&cateId=50022270&dateType=week') #登录后跳转到生意参谋 await asyncio.sleep(10) #await page.click('#content-container > div.ebase-metaDecorator__root > div > div.ebase-FaCommonFilter__root > div > div > div > div > div.ebase-FaCommonFilter__top > div.ebase-FaCommonFilter__right > div > div > div.oui-date-picker-particle-button > button.ant-btn.oui-canary-btn.ant-btn-primary.ant-btn-sm > span') await page.evaluate( '''() =>{ Object.defineProperties(navigator,{ webdriver:{ get: () => false } }) }''') #uvHits = await page.waitForSelector('#sycm-mc-mq-cate-trend > div.oui-card-content.alife-one-design-sycm-indexes-trend-card-content > div > div.alife-one-design-sycm-indexes-trend-index-container > div > div > div:nth-child(1) > div.alife-one-design-sycm-indexes-trend-index-item-multiple-line-selectable.alife-one-design-sycm-indexes-trend-index-item-uvHits.active > div > div.oui-index-cell-indexValue.oui-num > div > div:nth-child(2) > img') #await uvHits.screenshot({'path': 'uvHits.png'}) #await asyncio.sleep(3) print('开始爬取市场大盘……')
Python爬虫生意参谋是一种利用Python编程语言编写的用于爬取生意参谋网站数据的工具。根据引用中的描述,生意参谋市场大盘爬虫脚本使用了pyppeteer和PIL库来处理数值图片问题,并通过人工登录来获取数据,并将爬取结果保存为csv文件。该脚本可以实现自动化地从生意参谋网站获取市场大盘数据。 引用中提到了生意参谋接口加密请求参数transit-id和接口响应数据解密的Python源码。这可能是指生意参谋网站使用了加密算法对请求参数和响应数据进行加密和解密操作。通过这些源码,用户可以了解到生意参谋网站的加密算法,并在自己的程序中实现相应的解密操作。 总之,Python爬虫生意参谋是一个用于爬取生意参谋网站数据的工具,可以通过自动登录和处理数值图片等方式获取市场大盘数据,并可以使用加密算法对请求参数和响应数据进行加密和解密操作。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* [生意参谋-市场大盘,市场排行爬虫脚本,采用pyppeteer+PIL方式处理数值图片问题,人工登录,并将爬取结果...](https://download.csdn.net/download/weixin_41141394/23529313)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 33.333333333333336%"] - *2* [生意参谋 transit-id data解密 python 源码](https://download.csdn.net/download/qq_42004597/13084593)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 33.333333333333336%"] - *3* [selenium+python代码合集](https://download.csdn.net/download/qq_44700741/88269968)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 33.333333333333336%"] [ .reference_list ]
评论 21
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值