python调用接口查询_python调用接口查询 顺丰单号 物流信息
爱查快递 查询 顺丰单号 物流信息
Query.sign = function() {
function t(t) {
var e, i, s, a, r = -1;
for (e = 0,
s = t.length; s > e; e += 1) {
for (a = 255 & (r ^ t[e]),
i = 0; 8 > i; i += 1)
1 == (1 & a) ? a = a >>> 1 ^ o : a >>>= 1;
r = r >>> 8 ^ a
}
return -1 ^ r
}
function e(t, i) {
var s, o, r;
if ("undefined" != typeof e._x1l0o && i && t || (e._x1l0o = -1,
t)) {
for (s = e._x1l0o,
o = 0,
r = t.length; r > o; o += 1)
s = s >>> 8 ^ a[255 & (s ^ t[o])];
return e._x1l0o = s,
-1 ^ s
}
}
function i(t) {
var e, i, s, a, o, r = typeof t, n = 16, l = 0;
if ("string" !== r && "number" !== r)
return NaN;
if (!(e = (t = (t + "").replace(/\s/g, "").split(".")[0]).length))
return NaN;
if (n || (n = 10),
"number" != typeof n || 2 > n || n > 36)
return NaN;
for (i = t.split("").reverse(),
s = 0; e > s; s++)
(o = (a = i[s]).charCodeAt(0)) >= 97 && (a = o - 87),
l += Math.floor(a) * Math.pow(n, s);
return l
}
var s, a = [], o = i("edb" + i(15900));
return function() {
var t, e, i;
for (e = 0; 256 > e; e += 1) {
for (t = e,
i = 0; 8 > i; i += 1)
1 & t ? t = o ^ t >>> 1 : t >>>= 1;
a[e] = t >>> 0
}
}(),
(s = function(i, s) {
i = "string" == typeof i ? function(t) {
return Array.prototype.map.call(t, (function(t) {
return t.charCodeAt(0)
}
))
}(i + document.URL) : i;
return ((s ? t(i) : e(i)) >>> 0).toString(16)
}
).direct = t,
s.table = e,
s
}(),
# coding=utf-8
'''
爱查快递 查询 顺丰单号 物流信息
快递100
'''
import requests, time, random, json
import hashlib
import js2py
cx = '''
function t(t) {
var e, i, s, a, r = -1;
for (e = 0,
s = t.length; s > e; e += 1) {
for (a = 255 & (r ^ t[e]),
i = 0; 8 > i; i += 1)
1 == (1 & a) ? a = a >>> 1 ^ o : a >>>= 1;
r = r >>> 8 ^ a
}
return -1 ^ r
}
function e(t, i) {
var s, o, r;
if ("undefined" != typeof e._x1l0o && i && t || (e._x1l0o = -1,
t)) {
for (s = e._x1l0o,
o = 0,
r = t.length; r > o; o += 1)
s = s >>> 8 ^ a[255 & (s ^ t[o])];
return e._x1l0o = s,
-1 ^ s
}
}
function i(t) {
var e, i, s, a, o, r = typeof t, n = 16, l = 0;
if ("string" !== r && "number" !== r)
return NaN;
if (!(e = (t = (t + "").replace(/\s/g, "").split(".")[0]).length))
return NaN;
if (n || (n = 10),
"number" != typeof n || 2 > n || n > 36)
return NaN;
for (i = t.split("").reverse(),
s = 0; e > s; s++)
(o = (a = i[s]).charCodeAt(0)) >= 97 && (a = o - 87),
l += Math.floor(a) * Math.pow(n, s);
return l
}
var s, a = [], o = i("edb" + i(15900));
// return function() {
// var t, e, i;
// for (e = 0; 256 > e; e += 1) {
// for (t = e,
// i = 0; 8 > i; i += 1)
// 1 & t ? t = o ^ t >>> 1 : t >>>= 1;
// a[e] = t >>> 0
// }
// }(),
function sign(i, s) {
// var t = "SF1017195166769:15391588061440585https://www.ickd.cn/shunfeng.html",
i = "string" == typeof i ? function(t) {
return Array.prototype.map.call(t, (function(t) {
return t.charCodeAt(0)
}
))
}(i + 'https://www.ickd.cn/shunfeng.html') : i;
return ((s ? t(i) : e(i)) >>> 0).toString(16) // a5faf921
};
// var dstr = 'SF1017195166769:1539';
// var timestr = '1588061440585';
// var astr = dstr + timestr;
// var result = sign(astr, timestr);
// console.log(result);
'''
def random_pc_ua():
# 只要谷歌浏览器
ua_list = [
'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/78.0.3904.97 Safari/537.36',
'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/78.0.3904.108 Safari/537.36',
"Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US) AppleWebKit/534.7 (KHTML, like Gecko) Chrome/7.0.514.0 Safari/534.7 ",
"Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US) AppleWebKit/534.3 (KHTML, like Gecko) Chrome/6.0.472.55 Safari/534.3 ",
]
return random.choice(ua_list)
def ai_cha(waybill, phone):
'''
爱查快递
:return:
'''
timestr = str(int(float('%.3f' % time.time()) * 1000)) # '1588061440585'
astr = waybill + ':' + phone + timestr
print('astr = ', astr)
context = js2py.EvalJs()
context.execute(cx)
result_tk = context.sign(astr, timestr)
print('tk = ', result_tk)
# url = 'https://biz.trace.ickd.cn/shunfeng/SF1017195166769:1539?mailNo=SF1017195166769%3A1539&tk=238ed3a1&tm=1588043698617&callback=_jqjsp&_1588043698617='
# url = f'https://biz.trace.ickd.cn/shunfeng/{waybill}:{phone}?mailNo={waybill}%3A{phone}&tk=238ed3a1&tm={timestr}&callback=_jqjsp&_{timestr}='
url = f'https://biz.trace.ickd.cn/shunfeng/{waybill}:{phone}?mailNo={waybill}%3A{phone}&tk={result_tk}&tm={timestr}&callback=_jqjsp&_{timestr}='
headers = {
'user-agent': random_pc_ua(), #'Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/78.0.3904.97 Safari/537.36'
}
res = requests.get(url=url, headers=headers, timeout=5)
# print(res.text)
# print('-->', res.status_code)
data_json = json.loads(res.text.replace('_jqjsp(', '').replace('});', '}') )
# print('data_json = ', data_json)
if 'update' in data_json.keys() and 'cache' in data_json.keys():
for d in data_json['data']:
print(d)
else:
ai_cha(waybill, phone)
# ***********************************************************************************************************************************
def kuai_di_100(waybill, phone):
# url = 'https://www.kuaidi100.com/query?type=shunfeng&postid=SF1007703287911&id=1&valicode=&temp=0.5434366773989916&phone=1539'
tempstr = round(random.uniform(0, 1), 19)
print('tempstr = ', tempstr, len(str(tempstr)))
url = f'https://www.kuaidi100.com/query?type=shunfeng&postid={waybill}&id=1&valicode=&temp={tempstr}&phone={phone}'
headers = {
'user-agent': random_pc_ua(),
"Accept": "*/*",
"Accept-Encoding": "gzip, deflate, br",
"Accept-Language": "zh-CN,zh;q=0.9",
"Connection": "keep-alive",
"Host": "www.kuaidi100.com",
"Referer": "https://www.kuaidi100.com/all/sf.shtml",
"Sec-Fetch-Mode": "cors",
"Sec-Fetch-Site": "same-origin",
}
res = requests.get(url=url, headers=headers, timeout=5)
# print(res.text)
print('-->', res.status_code)
data_json = json.loads(res.text.replace('_jqjsp(', '').replace('});', '}') )
for d in data_json['data']:
print(d)
if __name__ == '__main__':
waybill = 'SF1017195166769'
# waybill = 'SF1007703287911'
phone = '1539'
# ai_cha(waybill, phone)
kuai_di_100(waybill, phone)
# from urllib.parse import unquote, quote
#
# print(unquote('%b3%c9%b6%bc'))
# print(quote('成都'))
python调用接口查询_python调用接口查询 顺丰单号 物流信息相关推荐
- 查询单号物流信息是否揽收教你一键操作
大家一般会选择什么样的快递查询方式去查询多个快递物流呢?下面随着小编一起来试试这个新技巧,来看看吧. 需要那些工具? 安装一个快递批量查询高手 快递单号 怎么快速查询? 打开快递批量查询高手,在查询之 ...
- 如何快速查询全部快递单号物流信息
通过快递单号,我们可以查询到物流信息,跟踪物流,那么我们要如何快速查询单号物流信息呢?这里给大家安利批量查询快递单号物流的技巧,一起来看看吧. 准备工具: 下载一个快递批量查询高手 快递单号 开始操作 ...
- 批量查询韵达快递单号物流信息的教学分享
小伙伴们是不是经常为了如何批量查询大量的快递单号并导出查询数据而头疼?今天小编给大家安利一款实用的辅助工具:"固乔快递查询助手",这是一款全自动批量查询跟踪快递信息的软件,采用官方 ...
- 怎么快速查询UPS多个单号物流信息
UPS国际快递件路途比较远,通过UPS官网查询物流信息来了解包裹的运输动态,还可以通过快递批量查询高手来批量查询单号的物流信息走向动态. 用快递批量查询高手,查询前要先勾选好查询的接口和风格选项,并保 ...
- 查询快递物流只有揽收信息的单号
寄送出大量的快递后,所有单号物流信息如何查询跟踪呢?怎样及是发现快递物流只有揽收的信息,没有物流,下面用批量查询物流的方法快速查询,并筛选出只有揽收物流的单号.一起来看操作吧. 准备工具: 安装一个快 ...
- 快速查询宅急送单号物流信息的方法
宅急送作为全国型直营公司,有着优于同行业的直营终端网络优势和完整深度的网络覆盖.那么我们该如何批量查询宅急送单号的物流信息,并分析一天未更新的单号呢?下面一起来操作. 所需工具 下载一个快递批量查询高 ...
- 教你查询快递单号物流信息,查看每个物流进程
有很多做电商的商家都在问,如何在线查询跟踪快递单号物流信息,单号量太多,官网上查询实在太费时费力了,别急,下面为大家分享一个批量查询的新技巧,一次以查询多个快递物流,查询每个单号物流进程.下面就一起来 ...
- python写入mysql数据库_python调用http接口,数据写入mysql数据库并下载录音文件
写个脚本一共完成了三件事: 第一,python调用http接口, 第二,把调用到的数据写入mysql数据库, 第三,python调用wsdl接口,获取录音文件, import time import ...
- python调用webservice接口实例_python调用各种接口,webservice,c接口,com接口,socket协议方法...
python调用webservice接口(SOAP) (2)调用示例: 需要先安装suds库:pip install suds from suds.client import Client #如果需要 ...
最新文章
- XenServer和VMware vSphere技术比较
- Android SDK与API版本的对应关系
- VS2010 ,工程文件减肥
- 网络小贷迎来最强监管,八成公司恐将面临转型或淘汰
- 【完结】你对深度学习模型的理解是否足够深刻,这12篇文章可以作为一个参考...
- C#LeetCode刷题之#55-跳跃游戏(Jump Game)
- 若微型计算机在工作时突然断电,16秋《计算机基础》作业1
- spss方差分析_【D】SPSS统计案例分析:多因素方差分析
- ASO优化教程:产品预热与应用提交aso主要优化,ASO优化
- 微型计算机中一个字节由2位组成,一个字节由几个二进制位组成
- 微信视频号迅速突破“快抖”封锁 ,换挡提速!
- 魔域单机版mysql数_魔域数据表!
- 使用机器学习预测大盘
- 微信小程序网络请求异常怎么办_微信小程序打开提示“网络异常,请检查网络状态”的解决方法...
- 【论文笔记-NER综述】A Survey on Deep Learning for Named Entity Recognition
- frp,ngrok服务器搭建
- APP使用相机CameraX
- Windows server 2003 怎么安装ACHI驱动?
- 关于配置SVN 报错 svn: E200002 的问题
- 2021年实践活动无人机赛项2021版无人机组装与维修芯片级
热门文章
- windows分区给linux根目录,装了双系统,为何在linux中看不到我windows中文件分区里的东东啊??!...
- Autolabeling 3D Objects with Differentiable Rendering of SDF Shape Priors
- 一天真的等于24小时吗?
- android fqrouter2,fqrouter2
- 三伏天,人体内有一个“冰箱”
- brew安装mysql ,最后ln -sfv /usr/local/opt/mysql/*.plist ~/Library/LaunchAgents 这句什么意思?
- mysql分页时获得行数_MySQL分页取得总行数新法
- Android11 Wifi Mac地址设置随机或者固定分析
- Linux提示ipconfig命令不存在
- C# 获取word批注信息