早就聽說requests的庫的強大,只是還沒有接觸,今天接觸了一下,發現以前使用urllib,urllib2等方法真是太搓了……
這裡寫些簡單的使用初步作為乙個記錄
1234567
891011
1213
1415
1617
1819
2021
2223
2425
26
r = requests.get('')print r.text
''',
"headers": ,
"origin": "124.192.129.84",
"url": ""
'''# 傳送帶引數的get請求,將key與value放入乙個字典中,通過params引數來傳遞,其作用相當於urllib.urlencode
``` python
>>> import requests
>>> pqyload =
>>> r = requests.get('',params = pqyload)
>>> r.url
u'?q=%e6%9d%a8%e5%bd%a6%e6%98%9f'
1234567
891011
1213
1415
1617
1819
2021
2223
2425
2627
>>> payload =可以看到,post引數已經傳到了form裡,data不光可以接受字典型別的資料,還可以接受json等格式>>> r = requests.post("", data=payload)
>>> print r.text
,"data": "",
"files": {},
"form": ,
"headers": ,
"json": null,
"origin": "124.192.129.84",
"url": ""
}>>>
1234
>>> payload =這個相當於向**上傳一張,文件等操作,這時要使用files引數>>> import json
>>> r = requests.post('', data=json.dumps(payload))
1234
>>> url = ''>>> files =
>>> r = requests.post(url, files=files)
1234567
>>> import jsonr = requests.get(『『)>>> url = ''
>>> payload =
>>> r = requests.post(url, data=json.dumps(payload), headers=headers)
print r.status_code
123
>>> print r.headers也可以取到這個個別的響應頭用來做一些判斷,這裡的引數是不區分大小寫的
也可以自已定義請求的cookies
1234567
891011
12
>>> url = ''cookies還有很多,因為目前我也還不是很多,以後再擴充吧>>> cookies =
>>> r = requests.get(url,cookies = cookies)
>>>
>>> print r.text
}>>>
12
>>> requests.get('', timeout=1)如果將時間設定成非常小的數,如requests.get(『』, timeout=0.001),那麼如果在timeout的時間內沒有連線,那麼將會丟擲乙個timeout的異常
先初始化乙個session物件,s = requests.session()
然後使用這個session物件來進行訪問,r = s.post(url,data = user)
參考文章 基本上都是從這扒的**
20151029更新,和美女劉巍進行討論,由於很久沒有登入人人網,它的登入頁面與獲得最近來訪的頁面都有所變動,登入時的url是 獲取最近來訪是
更多的來訪就是以帶session的訪問
1234567
891011
1213
1415
1617
1819
2021
2223
2425
2627
2829
30
#coding:utf-8import requests
import re
url = r''
user =
s = requests.session()
r = s.post(url,data = user)
html = r.text
visit =
first = re.compile(r'
(.*?)')
second = re.compile(r'
(.*?)')
third = re.compile(r'
(.*?)')
last = re.compile(r'
(.*?)')
visit.extend(first.findall(html))
visit.extend(second.findall(html))
visit.extend(third.findall(html))
visit.extend(last.findall(html))
for i in visit:
print i
'以下是更多的最近來訪'
vm = s.get('')
fm = re.compile(r'"name":"(.*?)"')
visitmore = fm.findall(vm.text)
for i in visitmore:
print i
renren
Python之requests的安裝
在 windows 系統下,只需要輸入命令 pip install requests 即可安裝。在 linux 系統下,只需要輸入命令 sudo pip install requests 即可安裝。注 關於python第三方庫的安裝最好少使用 easy install,因為 easy install...
Python之requests的安裝
在 windows 系統下,只需要輸入命令 pip install requests 即可安裝。在 linux 系統下,只需要輸入命令 sudo pip install requests 即可安裝。注 關於python第三方庫的安裝最好少使用 easy install,因為 easy install...
python對於requests的封裝
由於requests是http類介面的核心,因此封裝前考慮問題比較多 1.對多種介面型別的支援 2.連線異常時能夠重連 3.併發處理的選擇 4.使用方便,容易維護 當前並未全部實現,後期會不斷完善。重點提一下併發處理的選擇 python的併發處理機制由於存在gil的原因,實現起來並不是很理想,綜合考...