对python3标准库httpclient的使用详解
作者:路或遥 发布时间:2021-09-07 06:48:02
标签:python3,httpclient
如下所示:
import http.client, urllib.parse
import http.client, urllib.parse
import random
USER_AGENTS = [
"Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; AcooBrowser; .NET CLR 1.1.4322; .NET CLR 2.0.50727)",
"Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 6.0; Acoo Browser; SLCC1; .NET CLR 2.0.50727; Media Center PC 5.0; .NET CLR 3.0.04506)",
"Mozilla/4.0 (compatible; MSIE 7.0; AOL 9.5; AOLBuild 4337.35; Windows NT 5.1; .NET CLR 1.1.4322; .NET CLR 2.0.50727)",
"Mozilla/5.0 (Windows; U; MSIE 9.0; Windows NT 9.0; en-US)",
"Mozilla/5.0 (compatible; MSIE 9.0; Windows NT 6.1; Win64; x64; Trident/5.0; .NET CLR 3.5.30729; .NET CLR 3.0.30729; .NET CLR 2.0.50727; Media Center PC 6.0)",
"Mozilla/5.0 (compatible; MSIE 8.0; Windows NT 6.0; Trident/4.0; WOW64; Trident/4.0; SLCC2; .NET CLR 2.0.50727; .NET CLR 3.5.30729; .NET CLR 3.0.30729; .NET CLR 1.0.3705; .NET CLR 1.1.4322)",
"Mozilla/4.0 (compatible; MSIE 7.0b; Windows NT 5.2; .NET CLR 1.1.4322; .NET CLR 2.0.50727; InfoPath.2; .NET CLR 3.0.04506.30)",
"Mozilla/5.0 (Windows; U; Windows NT 5.1; zh-CN) AppleWebKit/523.15 (KHTML, like Gecko, Safari/419.3) Arora/0.3 (Change: 287 c9dfb30)",
"Mozilla/5.0 (X11; U; Linux; en-US) AppleWebKit/527+ (KHTML, like Gecko, Safari/419.3) Arora/0.6",
"Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.8.1.2pre) Gecko/20070215 K-Ninja/2.1.1",
"Mozilla/5.0 (Windows; U; Windows NT 5.1; zh-CN; rv:1.9) Gecko/20080705 Firefox/3.0 Kapiko/3.0",
"Mozilla/5.0 (X11; Linux i686; U;) Gecko/20070322 Kazehakase/0.4.5",
"Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.9.0.8) Gecko Fedora/1.9.0.8-1.fc10 Kazehakase/0.5.6",
"Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/535.11 (KHTML, like Gecko) Chrome/17.0.963.56 Safari/535.11",
"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_7_3) AppleWebKit/535.20 (KHTML, like Gecko) Chrome/19.0.1036.7 Safari/535.20",
"Opera/9.80 (Macintosh; Intel Mac OS X 10.6.8; U; fr) Presto/2.9.168 Version/11.52",
'Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/63.0.3239.132 Safari/537.36'
]
def get_demo(num,keyword):
page = urllib.parse.urlencode({'page':num})
params = urllib.parse.urlencode({})
headers = {'Referer': 'http://t66y.com/index.php',
'User-Agent': random.choice(USER_AGENTS )
'Accept - Encoding': 'gzip, deflate',
'Accept - Language': 'zh - CN, zh;q = 0.9',
}
conn = http.client.HTTPConnection("ttty.com", timeout=10)
conn.request("GET", "/thread0806.php?fid=16&"+page, params, headers)
r1 = conn.getresponse()
data = r1.read().decode('gbk') # This will return entire content.
content = data.find(keyword)
if content != -1:
print('bingo:'+page)
else:
print('try {},status:{}'.format(page, r1.status))
def post_demo():
params = urllib.parse.urlencode({'qruuid': 'asdf', 'user_uuid': '3423412dfasf'})
headers = {"Content-type": "application/x-www-form-urlencoded",
"Accept": "application/json"}
conn = http.client.HTTPSConnection("wx.coderr.cn")
conn.request("POST", "/api/qrcode", params, headers)
response = conn.getresponse()
print(response.status, response.reason)
if not response.closed:
data = response.read()
print(data, type(data.decode('utf-8')))
conn.close()
if __name__ == '__main__':
pass
来源:https://blog.csdn.net/sinat_29173167/article/details/80891129
0
投稿
猜你喜欢
- 这篇文章主要介绍了Python如何基于smtplib发不同格式的邮件,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习
- 前言本文代码基于 python3.6 和 pygame1.9.4。俄罗斯方块是儿时最经典的游戏之一,刚开始接触 pygame 的时候就想写一
- 一种很常见的写法: document.write('<scr'+'ipt src=&quo
- 【pytorch官方文档】:https://pytorch.org/docs/stable/generated/torch.nn.AvgPo
- 安装Python1.下载适合系统版本的Python先到网址(http://www.python.org/getit/)下载适合自己windo
- 背景使用python操作一批同样分辨率的图片,合并为tiff格式的文件。由于opencv主要用于读取单帧的tiff文件,对多帧的文件支持并不
- 这篇文章主要介绍了Python @property装饰器原理解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值
- 目录WSGI基本原理1. WSGI处理过程2. WSGI示例3. WSGI web服务器和应用程序WSGI基本原理1. WSGI处理过程浏览
- SMTP协议首先了解SMTP(简单邮件传输协议),邮件传送代理程序使用SMTP协议来发送电邮到接收者的邮件服务器。SMTP协议只能用来发送邮
- 常用 ASCII 码表对照表:注意如下几点:0-9:48-57A-Z:65-90a-z:97-122ord()函数介绍: ord(
- VScode编辑器在安装好Python插件之后会自动选择环境变量中排序最高的那一个解释器作为默认解释器,而想要额外添加新的Python解释器
- JSON(JavaScript Object Notation, JS 对象简谱) 是一种轻量级的数据交换格式。它基于 ECMAScript
- Cloudinary提供了一个API,用于将图像、视频和任何其他类型的文件上传到云端。上传到Cloudinary的文件通过安全备份和修订历史
- 用于序列化的两个模块json:用于字符串和Python数据类型间进行转换pickle: 用于python特有的类型和python的数据类型间
- 一、if语句if 语句让你能够检查程序的当前状态,并据此采取相应的措施。if语句可应用于列表,以另一种方式处理列表中的大多数元素,以及特定值
- 前言在设计用例的时候,有些用例只是参数数据的输入不一样,比如登录这个功能,操作过程是一样的.如果重复去写操作过程会增加代码量,对应这种多组数
- 一。安装python1.到python官网下载安装包注意:班级同学们请到班级资料下载安装包,可以不用到网上下载。点击导航栏download-
- 举例: 如:在字段名处输入:username,password,email,telphone 注意:不同的字段名用英文逗号隔开,且不支持星号
- 很多时候我们会发现有的时候输出的结果特别多的时候,会在最后输出时用。。。代替,最后输出一个总长度,那要咋么弄咧?import pandas
- 前言最近更新了Python版本,准备写个爬虫,意外的发现urllib库中属性不存在urlopen,于是各种google,然后总结一下给出解决