ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

逆向爬虫01 requests模块

2021-12-19 23:30:01  阅读:133  来源: 互联网

标签:01 请求 get url resp 爬虫 print requests


python requests模块

requests是一个python模拟浏览器发送http请求的模块

1. 使用requests模块发送get请求,获取网页源代码

import requests

url = "http://www.baidu.com"
resp = requests.get(url)
resp.encoding = "utf-8"			# 如果resp.text是乱码则需要指定编码格式,一般不是utf-8就是gbk
print(resp.text)

2. get请求可以携带参数,get请求的参数写在url的域名后面

import requests

kw = input("请输入要检索的关键字: ")
url = f"https://www.sogou.com/web?query={kw}"
headers = {
    # 添加一个请求头信息UA,如果没有请求头,目标服务器会拒绝我们访问,这是一个最简单的反爬手段,只需要在http请求头中添加浏览器信息,就可以骗过目标服务器。
    "user-agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/96.0.4664.110 Safari/537.36 Edg/96.0.1054.57"
}
resp = requests.get(url, headers=headers)
print(resp.text)

3. 使用requests模块发送post请求

import requests

url = "https://fanyi.baidu.com/sug"
data = {
    "kw": input("请输入一个单词")
}
resp = requests.post(url, data=data)
print(resp.text)	# 拿到json字符串
print(resp.json)	# 拿到json字典

4. 当get请求参数太多时怎么处理

import requests

url = "https://movie.douban.com/j/chart/top_list"
headers = {
    # 添加一个请求头信息UA,如果没有请求头,目标服务器会拒绝我们访问,这是一个最简单的反爬手段,只需要在http请求头中添加浏览器信息,就可以骗过目标服务器。
    "user-agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/96.0.4664.110 Safari/537.36 Edg/96.0.1054.57"
}
data = {
    "type": "13",
    "interval_id": "100:90",
    "action": "",
    "start": "0",
    "limit": 20
}
resp = requests.get(url, params=data, headers=headers)	# get请求会默认把params参数拼到url后面
print(resp.text)		# 拿到json字符串
print(resp.json())		# 拿到json字典
print(resp.request.url)

标签:01,请求,get,url,resp,爬虫,print,requests
来源: https://blog.csdn.net/weixin_40743639/article/details/122032264

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有