python 模擬登入csdn並獲取部落格列表等操作

2021-07-15 10:22:00 字數 2945 閱讀 2651

# python3.3 可以登入成功

'建立cookie'

'在登入之前獲取隨機key'

url = ''

html = self.opener.open('').read().decode(

"utf8")

patten1 = re.compile(r'name="lt" value="(.*?)"')

patten2 = re.compile(r'name="execution" value="(.*?)"')

lt = patten1.search(html)

execution = patten2.search(html)

return

def login(self):

'登入csdn'

url = ''

res = self.getkeybeforelogin()

opener = self.opener

postdata =

opener.addheaders = [('host', 'passport.csdn.net'),

('user-agent',

('referer', '')

]postdata = urllib.parse.urlencode(postdata).encode(encoding='utf8')

response = opener.open('', data=postdata)

text = response.read().decode('utf-8', 'ignore')

pattenerror = r'帳戶名或登入密碼不正確'

error = re.search(pattenerror, text)

if error:

self.loginstatus = 0

self.errorinfo = '帳戶名或登入密碼不正確'

raise exception(self.errorinfo)

return none

else:

self.loginstatus = 1

patten = re.compile(r'var redirect = "(.*?)"')

redirect = patten.search(text)

return redirect.group(1)

def visitredirectafterlogin(self, redirect):

'在登入之後訪問跳轉'

opener = self.opener

response = opener.open(redirect)

text = response.read().decode('utf-8', 'ignore')

# tools.log(text, 'csdn_test.html')

def visitbloglist(self):

'訪問部落格列表'

opener = self.opener

response = opener.open('')

text = response.read().decode('utf-8', 'ignore')

list = self.handlebloglist(text)

return list

def handlebloglist(self, text):

'處理部落格分類'

pattern = r"(.*?)(.*?)\((.*?)\)(.*?)

([0-9]+)

([0-9]+)([\s\s]*?)"

matchs = re.findall(pattern, text)

res =

if matchs:

for i in matchs:

list =

return res

def visitblogcategory(self):

'訪問部落格分類'

opener = self.opener

response = opener.open('')

text = response.read().decode('utf-8', 'ignore')

return self.handleblogcategory(text)

def handleblogcategory(self, text):

'處理部落格分類'

pattern = r"(.*?)

([\s\s]*?)0:

enddata = res[-1]

print(enddata)

self.editblogcategory(enddata['id'], 'test_add')

print(self.visitblogcategory())

if __name__ == '__main__':

csdn = csdn('csdnusername', 'csdnpassword')

csdn.main()

python模擬登入

使用python模擬登入的乙個思路 一,獲取data,獲取headers 二,構造cookie 需要使用urllib,urllib2,cookielib 這三個模組 使用瀏覽器獲取 的data,headers 構造data,headers字典 作為引數 使用urllib2的request方法傳遞引數...

Python模擬登入

最近想做乙個可以模擬人工,對 的內容進行操作,比如自動購物,自動支付。朋友向我推薦用python去寫,我也就開始用python。看了一些大概,用python3 的requests去弄,感覺邏輯很簡單。最主要的問題是如何去分析 的邏輯,這很難。用了chrome f12 記錄網頁的操作,但是一點是,ch...

Python模擬登陸CSDN

找到csdn登入頁,先開啟google審查工具,鍵入錯誤使用者名稱密碼,登入csdn,找到合適引數 找到後即可設定,如下 設定請求頭 headers 登入時表單提交到的位址 用開發者工具可以看到 login url 登入時需要post的資料,使用者名稱,密碼 value 輸入的資料需要被轉碼成byt...