python的requests初步使用

2022-05-11 05:28:53 字數 3232 閱讀 5290

早就聽說requests的庫的強大,只是還沒有接觸,今天接觸了一下,發現以前使用urllib,urllib2等方法真是太搓了……

這裡寫些簡單的使用初步作為乙個記錄

3456

78910

1112

1314

1516

1718

1920

2122

2324

25r = 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'12

3456

78910

1112

1314

1516

1718

1920

2122

2324

2526

27>>> payload =

>>> r = requests.post("", data=payload)

>>> print r.text

,"data": "",

"files": {},

"form": ,

"headers": ,

"json": null,

"origin": "124.192.129.84",

"url": ""

}>>>

可以看到,post引數已經傳到了form裡,data不光可以接受字典型別的資料,還可以接受json等格式12

34>>> payload =

>>> import json

>>> r = requests.post('', data=json.dumps(payload))12

34>>> url = ''

>>> files =

>>> r = requests.post(url, files=files)12

3456

7>>> import json

>>> url = ''

>>> payload =

>>> r = requests.post(url, data=json.dumps(payload), headers=headers)

r = requests.get(『『)

print r.status_code12

3>>> print r.headers

也可以取到這個個別的響應頭用來做一些判斷,這裡的引數是不區分大小寫的

也可以自已定義請求的cookies12

3456

78910

1112

>>> url = ''

>>> cookies =

>>> r = requests.get(url,cookies = cookies)

>>>

>>> print r.text

}>>>

cookies還有很多,因為目前我也還不是很多,以後再擴充吧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的訪問12

3456

78910

1112

1314

1516

1718

1920

2122

2324

2526

2728

2930

#coding:utf-8

import 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

print '以下是更多的最近來訪'

vm = s.get('')

fm = re.compile(r'"name":"(.*?)"')

visitmore = fm.findall(vm.text)

for i in visitmore:

print i

python的requests初步使用

早就聽說requests的庫的強大,只是還沒有接觸,今天接觸了一下,發現以前使用urllib,urllib2等方法真是太搓了 這裡寫些簡單的使用初步作為乙個記錄 123 4567 891011 1213 1415 1617 1819 2021 2223 2425 26 r requests.get ...

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...