# -*- coding:utf8 -*-
import requests
#requests.get. test(),content().encode('utf8'),response.url,response.
def getRsp_1():
response = requests.get('https://www.baidu.com')
# print(type(response.text)) #<class 'str'>,返回的是unicode编码的数据,如果网页以其他编码格式,那么就乱码。
# print(response.content) #content返回的内容是字节流数据。bytes.所以可以设定自己的编码
# print(response.content.decode('utf8'))#这样就是看到中文的百度首页。
# print(response.url)
# print(response.encoding)
# print(response.status_code)
"""
https://www.baidu.com/
ISO-8859-1 这不一定是网页的编码。
200
"""
# 如果需要添加headers还有需要添加参数。那么不用进行urlencode()
myheaders = {
'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/65.0.3325.181 Safari/537.36',
}
kw = {'wd':'黎明'}
response = requests.get("http://www.baidu.com/s",params=kw,headers=myheaders)
print(response.url) #http://www.baidu.com/s?wd=%E9%BB%8E%E6%98%8E
# 发送的请求是:https://www.baidu.com/s?wd=黎明
print(response.content.decode('utf8'))
#requests.post()
def getRsp_2():
#Referer是拉勾网必须要求的请求参数,否则就被反爬。这个地址和浏览器框中可见地址一样。
headers = {
'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/65.0.3325.181 Safari/537.36',
'Referer':'https://www.lagou.com/jobs/list_python?labelWords=&fromSearch=true&suginput=',
}
url_post ='https://www.lagou.com/jobs/positionAjax.json?city=%E6%9D%AD%E5%B7%9E&needAddtionalResult=false'
# first = true & pn = 1 & kd = python
data = {'first':'true','pn':'1','kd':'python'}
response = requests.post(url_post,data=data,headers=headers)
# print(response.text) #ok
# 将网页返回的json数据进行格式化。
print(response.json())#返回一个字典。
#使用代理。
def getRsp_3():
# 从西刺代理中选取一个可用的。
proxy = {'http':'125.118.240.66:6666'}
response = requests.get('http://httpbin.org/ip',proxies=proxy)
print(response.text) #ok
#使用cookie
def getRsp_4():
response = requests.get('http://www.baidu.com')
print(response.cookies) #<RequestsCookieJar[<Cookie BDORZ=27315 for .baidu.com/>]>
print(response.cookies.get_dict()) #这样就能得到cookie的字典。
# 使用session,这个地方只是一个会话的对象而已
headers = {
'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/65.0.3325.181 Safari/537.36',
'Referer': 'https://www.lagou.com/jobs/list_python?labelWords=&fromSearch=true&suginput=',
}
url = 'http://www.renren.com/PLogin.do'
data = {'email':'18867319765','password':'woshidabendanyou'}
session = requests.session()
response = session.post(url,headers=headers,data=data)
print(response.text) #ok
#处理不信任的ssl证书。例如12306的证书是自己构建的。
def getRsp_5():
url = 'http://www.12306.cn/mormhweb/' #但是这个网站现在证书已经认证了。
response = requests.get(url,verify=False)
print(response.content.decode('utf8'))
if __name__ =="__main__":
# getRsp_1()
# getRsp_2()
# getRsp_3()
# getRsp_4()
# getRsp_5()
getRsp_6()
python3 requests
猜你喜欢
转载自blog.csdn.net/baidu_36831253/article/details/80152781
今日推荐
周排行