PythonPa取正义数据

该博客介绍了如何使用Python爬取特定API获取风险地区数据,并进行签名计算。内容包括解析API请求参数、构建请求头、实现签名算法,然后通过requests库发送POST请求获取数据。数据获取后,将其存储到MySQL数据库,同时处理跨域问题,演示了在Vue中使用fetchJsonp解决跨域获取数据的方法。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

获取API数据,分享给更多的遵纪守法的我们


一、python爬取请求

1.分析API

先看下响应的数据,风险地区

在这里插入图片描述
请求的参数,也就要计算最后两个(签名与发送时间戳)

在这里插入图片描述
还有就是请求头里这两个是最重要的

在这里插入图片描述

开始翻代码,蓝色的是时间的计算,然后红色的是两个签名的计算方式

在这里插入图片描述

2.py爬虫

签名在手,数据你有,那么我们一起开始爬吧

o 为Python方式的时间计算 JS方式:((new Date).getTime() / 1e3).toFixed()

s1s2 分别为Python方式实现的两个签名的计算

签名1JS方式:CryptoJS.SHA256(e + i + a + e).toString(CryptoJS.enc.Hex).toUpperCase()

签名2JS方式:CryptoJS.SHA256(n + “fTN2pfuisxTavbTuYVSsNJHetwq5bJvCQkjjtiLM2dCratiA” + n).toString(CryptoJS.enc.Hex).toUpperCase()

import pymysql as MySQLdb
import requests
import hashlib
import time
import json

o = '%.3f' % (time.time() / 1e3)
e = o.replace('.','')
i = "23y0ufFl5YxIyGrI8hWRUZmKkvtSjLQA"
a = "123456789abcdefg"
s = "zdww"

def getSignature1():
    s = hashlib.sha256()
    s.update(str(e + i + a + e).encode("utf8"))
    b = s.hexdigest().upper()
    return b

def getSignature2():
    s = hashlib.sha256()
    s.update(str(e + 'fTN2pfuisxTavbTuYVSsNJHetwq5bJvCQkjjtiLM2dCratiA' + e).encode("utf8"))
    b = s.hexdigest().upper()
    return b

s1 = getSignature1()
s2 = getSignature2()

都算好了就开始拼数据发送了,下面是部分请求头与完整的请求参数

post_dict = {
   
    'appId': 'NcApplication'
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值