鍍金池/ 問答/數(shù)據(jù)分析&挖掘  Java  Python/ requests cookies模擬登錄遇到問題

requests cookies模擬登錄遇到問題

如題,嘗試使用cookies模擬登錄www.jianshu.com,但是沒有成功,來這里像找點思路。

模擬的過程:f12,network找到cookies,cookies有點多,先一股腦全加進(jìn)去,發(fā)現(xiàn)不行。
由于掌握的還是比較基本的操作,一時想不到為什么,怎么做,求解,給個思路就行。

代碼:

import requests
import re
import json

session = requests.Session()
with open('cookies.json','r') as f:
    cookies = json.load(f)

requests.utils.add_dict_to_cookiejar(session.cookies, cookies)

url = 'https://www.jianshu.com/wallet'
session.headers = {
    "User-Agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Ubuntu Chromium/66.0.3359.139 Chrome/66.0.3359.139 Safari/537.36",
    "Host":"www.jianshu.com",
    'Accept':'text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,*/*;q=0.8',
    'Accept-Encoding':'gzip, deflate, br',
    'Accept-Language':'en-GB,en-US;q=0.9,en;q=0.8',
    'Cache-Control': 'max-age=0',
    'Connection':'keep-alive',
    'If-None-Match': 'W/"a9bcb96fa000f3fe2703ed7c884912f2"',
    'Referer': 'https://www.jianshu.com/',
    'Upgrade-Insecure-Requests': '1',
}
r = session.get(url)
username = re.search('<a class="name" href="[^"]+">(.*?)</a>',r.text)
if not username:
    print(r.text)
else:
    print(username.group(1))

圖片描述

回答
編輯回答
孤酒

問題已解決,又被js坑了(下次一定記?。?br>那個頁面我選擇的標(biāo)簽是用js動態(tài)添加的,所以什么都爬不到就正常了。然后我又分析了一下用爬蟲獲取的頁面,是已經(jīng)登錄成功了的。

2017年1月28日 20:41