1. 程式人生 > >python爬蟲基礎,post提交方式復習

python爬蟲基礎,post提交方式復習

.post post請求 HERE int test orm 爬蟲 star tip

#-*-coding:utf8-*-

#參考學習官方資料 http://docs.python-requests.org/zh_CN/latest/user/quickstart.html

#POST請求與POST的提交方式(比如post請求方式,application/json編碼後的提交)
#application/x-www-form-urlencoded 以form表單的形式提交數據,這是最常見的一種
#application/json 以json串提交數據
#multipart/form-data:上傳文件

#http://httpbin.org/post 用來測試request的網址

import requests
url=‘http://httpbin.org/post‘
d={‘key1‘:‘value‘,‘key2‘:‘value2‘}
response=requests.post(url,data=d)
print(response.text)
print(response.content)#二進制的響應方式
print(response.json())#json的響應方式
print(response.raise_for_status())#成功什麽都不輸出
print(response.status_code)
print(response.headers[‘Content-Type‘])
# print(response.request.url)
# print(response.url)
# print(response.headers)
#request上傳文件的功能


#requests與cookies的聯系
print(‘---------------------------------------------------------‘)
url2=‘http://httpbin.org/cookies‘
cookies=dict(cookies_are=‘working‘)
response2=requests.get(url2,cookies=cookies)
print(response.cookies)#cookie的返回對象為RequestsCookieJar,它的行為和字典類似,但接口更為完整,適合跨域名跨路徑使用。
print(response2.text)

#你還可以把 Cookie Jar 傳到 Requests 中
jar=requests.cookies.RequestsCookieJar()
jar.set(‘tasty_cookie‘,‘yum‘,domain=‘httpbin.org‘,path=‘/cookies‘)
jar.set(‘gross_cookie‘,‘blech‘,domain=‘httpbin.org‘,path=‘/elsewhere‘)
r=requests.get(url2,cookies=jar)
print(r.text)

#重定向與禁用重定向
re=requests.get(‘http://github.com‘) #Github 將所有的 HTTP 請求重定向到 HTTPS:
print(re.status_code,‘ ‘,re.url,‘ ‘,re.history)

#禁用重定向
print(‘---------------------------------------------------‘)
re=requests.head(‘http://github.com‘,allow_redirects=True)
print(r.url,‘ ‘,r.status_code,‘ ‘,r.history)
#使用HEAD啟用重定向
re=requests.head(‘http://github.com‘,allow_redirects=True)


#requests高級用法
url3=‘http://www.yooc.me‘
res=requests.get(url3)
print(‘-------------------------------------------‘)
print(res.request.headers)

#高級用法 http://docs.python-requests.org/zh_CN/latest/user/advanced.html#advanced

python爬蟲基礎,post提交方式復習