我正在使用python 3.4.3,我正在尝试使用请求登录OKCupid。
我的代码返回的页面是初始登录页面,而不是用户在成功登录后会看到的页面。我尝试在这里查看几个答案和其他教程,其中大部分都指导我检查开发人员选项卡并使用方法“POST”查看请求,但我没有看到任何此类请求。
相反,我看到“GET”请求,我不确定请求如何处理这些请求。我尝试了许多不同的方法,但都没有奏效。这是我的简单代码:
import requests
from bs4 import BeautifulSoup
user='USERNAME'
pw='PASSWORD'
url='http://www.okcupid.com/login'
session=requests.session()
values = {'login_username':user, 'login_password':pw}
r = session.post(url,data=values)
soup = BeautifulSoup(r.content)
pSoup = BeautifulSoup.prettify(soup)
print(soup.title.string)
答案 0 :(得分:2)
我能够弄清楚。如果这对将来的某个人有帮助:有两件事阻止我以前的代码工作:
以下是修订后的代码:
import requests
from bs4 import BeautifulSoup
user='USERNAME'
pw='PASSWORD'
url='https://www.okcupid.com/login'
session=requests.session()
values = {'username': user, 'password': pw, 'okc_api': '1'}
session.post(url, data=values)
page = session.get('http://www.okcupid.com/')
soup = BeautifulSoup(page.content)
print(soup.title.string)
session.close()