第三方登录和第三方打码平台文档

超级硬打码文档

```python
#!/usr/bin/env python
# coding:utf-8
import requests
from hashlib import md5

class Chaojiying_Client(object):

def __init__(self, username, password, soft_id):
self.username = username
password = password.encode('utf8')
self.password = md5(password).hexdigest()
self.soft_id = soft_id
self.base_params = {
'user': self.username,
'pass2': self.password,
'softid': self.soft_id,
}
self.headers = {
'Connection': 'Keep-Alive',
'User-Agent': 'Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 5.1; Trident/4.0)',
}

def PostPic(self, im, codetype):
"""
im: 图片字节
codetype: 题目类型 参考 http://www.chaojiying.com/price.html
"""
params = {
'codetype': codetype,
}
params.update(self.base_params)
files = {'userfile': ('ccc.jpg', im)}
r = requests.post('http://upload.chaojiying.net/Upload/Processing.php', data=params, files=files, headers=self.headers)
return r.json()

def ReportError(self, im_id):
"""
im_id:报错题目的图片ID
"""
params = {
'id': im_id,
}
params.update(self.base_params)
r = requests.post('http://upload.chaojiying.net/Upload/ReportError.php', data=params, headers=self.headers)
return r.json()


if __name__ == '__main__':
chaojiying = Chaojiying_Client('17679962330', '0820@abcd', '901378') #用户中心>>软件ID 生成一个替换 96001
im = open('a.jpg', 'rb').read() #本地图片文件路径 来替换 a.jpg 有时WIN系统须要//
result = chaojiying.PostPic(im, 1902) #1902 验证码类型 官方网站>>价格体系 3.4+版 print 后要加()
print(result['pic_str'])
```

# 第三方登录

```python
from requests import Session
# 通过抓包, 确定登陆的post接口
post_url = 'https://www.kuaidaili.com/login/'
# 自定义请求头信息
headers = {
'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/78.0.3904.70 Safari/537.36'
}
# 构建的向服务器post的数据
data = {
"next": "",
"kf5_return_to": "",
"username": "",
"passwd": " ",
}
# 实例化session对象, 用于登陆状态的保持
session = Session()
# 利用session对象向服务器登陆接口post登陆信息
res = session.post(url=post_url,data=data, headers=headers)
# 订单页面的url地址
get_url = 'https://www.kuaidaili.com/usercenter/orderlist/'
# 利用已经封装了登陆cookie的session对象, 访问订单页面, 验证是否登陆成功
ret = session.get(url=get_url, headers=headers)
# 将订单页面写入HTML文件, 观察效果
with open('mycenter.html', 'w', encoding='utf-8') as f:
f.write(ret.text)

猜你喜欢

转载自www.cnblogs.com/ahmy/p/12605112.html