目的:動態獲取cookie
1、開啟開發者工具,檢視各自請求
2、可以看到name為session的請求【方式post,傳入的data】
3、檢視name為login的請求,原始碼中獲得token,作為上乙個請求中的data的一部分
檢視資訊流請求的url,自行構建對應的url,解析
1、這裡有個技巧 /div[@id=111]//text() 獲取div下面所以的text()
2、正則的re.sub(' +',' ',str)實現多個空格替換成單獨乙個空格
def dd(self):
para=
xml=self.xmlurl+ urlencode(para)
res=self.session.get(xml,headers=self.heads)
if res.status_code==200:
sele=etree.html(res.text)
dynamics=sele.xpath('//div[@class="d-flex flex-justify-between flex-items-baseline"]')
print(dynamics)
for i in dynamics:
str=''.join(i.xpath('./div//text()')).replace('\n','')#乙個div的所有[//]text()全部解析出來,然後構成乙個類別,並把換行符替換
str=re.sub(' +',' ',str)#多個空白字元,換成乙個
print(str)
這裡重點關注類的__init__()初始設定的屬性,3個不同的url,當然和session()會話的呼叫
from lxml import etree
import requests
from urllib.parse import urlencode
import re
class gitlogain():
def __init__(self,page):
self.heads=
self.logainurl=''
self.posturl=''
self.session=requests.session()
self.page=page
self.xmlurl=''
def token(self):
ruler=re.compile(r'name="authenticity_token" value="(.*)"./')
auth=self.session.get(self.logainurl,headers=self.heads)
z=auth.text
authenticity_token=ruler.findall(z)
print(authenticity_token[0])
return authenticity_token[0]
def login(self,email,password):
post_data=
ss=self.session.post(self.posturl,headers=self.heads,data=post_data)
if ss.status_code==200:
self.dd()
def dd(self):
para=
xml=self.xmlurl+ urlencode(para)
res=self.session.get(xml,headers=self.heads)
if res.status_code==200:
sele=etree.html(res.text)
dynamics=sele.xpath('//div[@class="d-flex flex-justify-between flex-items-baseline"]')
print(dynamics)
for i in dynamics:
str=''.join(i.xpath('./div//text()')).replace('\n','')#乙個div的所有[//]text()全部解析出來,然後構成乙個類別,並把換行符替換
str=re.sub(' +',' ',str)#多個空白字元,換成乙個
print(str)
使用requests模擬登陸github
學了了下python requests 以及文字處理和正則工具re,順便應用一下。使用requests模擬登陸github 準備 tampler data 使用教程 利用它獲取到登陸所需要的header,post引數等資訊。requests 快速入門教程 模擬 import requests imp...
c curl模擬登陸
我們在使用一些 時,輸入使用者名稱,密碼即可登陸該 登陸原理就是將使用者輸入的使用者名稱和密碼組合成乙個特定字串,post給乙個url位址,如果使用者名稱密碼正確,就可以登陸了,如果想使用程式模擬這種登陸過程,需要下面的步驟 1 抓包工具,推薦使用httpwatch專業版,輸入使用者名稱,密碼就開始...
CURL模擬登陸
created by phpstorm.user machenike date 2016 7 8 time 13 40 header content type text html charset utf 8 set time limit 0 關閉請求時間 cookie tempnam cookie ...