首页 > 求教:tumblr模拟登录

求教:tumblr模拟登录

python3 在tumblr模拟登录(不使用api)中,无法成功。
使用的是 requests + beautifulsoup
代码如下:


import requests
from bs4 import BeautifulSoup

start_url = 'https://www.tumblr.com'

# set a session for request
s = requests.Session()
s.headers.update({'user-agent': 'Mozilla/5.0 (Windows NT 10.0; WOW64; rv:48.0) Gecko/20100101 Firefox/48.0', 'accept-language': 'zh-CN,zh;'}
                 )

# get the form_key for login_in
r = s.get(start_url)
login_soup = BeautifulSoup(r.text, 'lxml')
hidden_div = login_soup.find('div', class_='form_row_hidden').find_all('input')
key_dict = {}

for input_tag in hidden_div:
    tmp_dict = input_tag.attrs
    key_dict.update({tmp_dict['name']: tmp_dict['value']})

user_data_dict = {'determine_email': '×××××××××',
                  'user[email]': '××××××××',
                  'user[password]': '××××××××',
                  'user[age]': '',
                  'tumblelog[name]': ''}

key_dict.update(user_data_dict)


# login in tumblr
r_login=s.post(start_url, headers=headers, data=key_dict)

home_soup=BeautifulSoup(r.text, 'lxml')
print(home_soup.title)

# 输出仍然为 注册-tumblr 界面 未成功

不知道哪里出错了,谢谢。


我试了一下可以的把headers 和 data 补全
注意里面的form_key每次都不同

【热门文章】
【热门文章】