『壹』 python 使用requests模塊, 如何模擬進行登錄並執行之後的操作
以下實例是一個完整的代碼,實現了從博客獲取內容發布至網路,分別實踐抓取博客內容、模擬登錄、表單提交這幾步;
#注意,以下程序是一個完全程序,如果只需要實現模擬登錄,提交表單,刪除抓取部分即可,相關的代碼已經清楚標注,可以根據自己實際情況修改。
代碼如下:
# -*- coding: utf-8 -*-
import re
import urllib
import urllib2
import cookielib
#第一步,獲取博客標題和正文 ,「IP」可以改為實際地址;
url = "IP"
sock = urllib.urlopen(url)
html = sock.read()
sock.close()
content = re.findall('(?<=blogstory">).*(?=<p class="right artical)', html, re.S)
content = re.findall('<script.*>.*</script>(.*)', content[0], re.S)
title = re.findall('(?<=<title>)(.*)-.* - CSDN.*(?=</title>)', html, re.S)
#根據文章獲取內容新建表單值
blog = {'spBlogTitle': title[0].decode('utf-8').encode('gbk'), #文章標題
'spBlogText': content[0].decode('utf-8').encode('gbk'),#文章內容
'ct': "1",
'cm': "1"}
del content
del title
#第二步,模擬登錄網路;
cj = cookielib.CookieJar()
#登陸網路的用戶名和密碼
post_data = urllib.urlencode({'username': '[username]', 'password': '[password]', 'pwd': '1'})
#登錄地址路徑
path = 'https://passport..com/?login'
opener = urllib2.build_opener(urllib2.HTTPCookieProcessor(cj))
opener.addheaders = [('User-agent', 'Opera/9.23')]
urllib2.install_opener(opener)
req = urllib2.Request(path, post_data)
conn = urllib2.urlopen(req)
#獲取網路登陸認證令牌
bd = urllib2.urlopen(urllib2.Request('http://hi..com/[username]/creat/blog')).read()
bd = re.findall('(?<=bdstoken\" value=\").*(?=ct)', bd, re.S)
blog['bdstoken'] = bd[0][:32]
#設置分類名
blog['spBlogCatName'] = 'php'
#第四步,比較表單,提交表單;req2 = urllib2.Request('http://hi..com/[username]/commit', urllib.urlencode(blog))
#最後,查看錶單提交後返回內容,檢驗;
print urllib2.urlopen(req2).read()
#注意:將[username]/[password]替換為自己真實用戶名和密碼
『貳』 python 使用requests模塊
>>>importrequests
>>>rsp=requests.get('網址',stream=True)
>>>print(rsp.raw._fp.fp.raw._sock.getpeername())
『叄』 Python3中的requests模塊怎樣用
Requests 是用Python語言編寫,基於 urllib,採用 Apache2 Licensed 開源協議的 HTTP 庫。它比 urllib 更加方便,可以節約我們大量的工作,完全滿足 HTTP 測試需求。Requests 的哲學是以 PEP 20 的習語為中心開發的,所以它比 urllib 更加 Pythoner。更重要的一點是它支持 Python3
開始要導入 Requests 模塊:
1
import requests
然後,嘗試獲取某個網頁。本例子中,我們來獲取 Github 的公共時間線:
1
r = requests.get('https://api.github.com')
可參考網址:www.cnblogs.com/wangyinghao/p/10712328.html
『肆』 Python的request模板安裝
根據我的經驗,版本問題,我猜測你的Python版本是3以上,而這個模塊是2.x的,現在這個是在urllib.request里,還有安裝許可權問題,我看有人提了,你運行pip install的時候用管理員許可權
『伍』 windows 下怎麼安裝python requests 模塊
一般是安裝好python之後。打開命令提示符,輸入pip install requests就可以安裝,如果提示沒有找到pip命令。那麼你就去找你的python的安裝包的位置,裡面有個文件夾叫scripts,找到後,再執行 安裝目錄\Scripts\pip install requests就可以了。我的python安裝目錄是C:\Python34所以,我打開命令提示符,然後輸入C:\Python34\Scripts\pip install requests就可以安裝了。
『陸』 新手Python裡面requests模塊的問題
題目裡面的那行代碼是伺服器端跳轉,url是跳轉地址,還有forward裡面的request和response應該是「,」號隔開的。兩個頁面共享一個request是說request的作用范圍,forward應該是將request和response傳遞下去而已。
『柒』 python request 哪個模塊
request是第三方模塊,不是python自帶的
可以使用pip install request安裝
『捌』 python中request與requests模塊有什麼不同嗎
現在讓我們嘗試下復雜點得例子:,這次需要基本的http驗證。使用上面的代碼作為模板,好像我們只要把urllib2.urlopen()
到requests.get()之間的代碼換成可以發送username,password的請求就行了
『玖』 python的requests模塊什麼功能
Requests
是使用
Apache2
Licensed
許可證的
HTTP
庫。用
Python
編寫,真正的為人類著想。
Python
標准庫中的
urllib2
模塊提供了你所需要的大多數
HTTP
功能,但是它的
API
太渣了。它是為另一個時代、另一個互聯網所創建的。它需要巨量的工作,甚至包括各種方法覆蓋,來完成最簡單的任務。
在Python的世界裡,事情不應該這么麻煩。
Requests
使用的是
urllib3,因此繼承了它的所有特性。Requests
支持
HTTP
連接保持和連接池,支持使用
cookie
保持會話,支持文件上傳,支持自動確定響應內容的編碼,支持國際化的
URL
和
POST
數據自動編碼。現代、國際化、人性化。
『拾』 python3.5和python3.6對request庫的支持
requests庫是一個常用的用於http請求的模塊,它使用python語言編寫,可以方便的對網頁進行爬取,是學習python爬蟲的較好的http請求模塊。
_ip命令安裝
_indows系統下只需要在命令行輸入命令 pip install requests 即可安裝
_? linux 系統下,只需要輸入命令 sudo pip install requests ,即可安裝。