我是python的新手,我必须检索此页面的数据。 http://mims.com/india/drug/search?q=dextro,但由于该网站要求用户 登录,因此我经历了以下代码。
import requests
from bs4 import BeautifulSoup as bs
POST_LOGIN_URL = "https://sso.mims.com/Account/Signin"
REQUEST_URL = "https://mims.com/india/drug/search?q=DEXTRO%20PLUS"
payload = {
"EmailAddress": "email address here",
"Password" : "password here"
}
with requests.Session() as session:
post = session.post(POST_LOGIN_URL, data=payload)
r = session.get(REQUEST_URL)
with open('abc.html', 'wb')as f:
f.write(r.content)
不是显示期望的结果,而是将我重定向到页面,并且我收到一个“ FORM”元素,其中包含method =“ post”请求和一个自动单击的按钮。 所以我无法弄清楚,请有人帮忙。
答案 0 :(得分:0)
在登录后或使用其他 GET 请求后,使用 selenium webdriver 和 wait 解决了该问题。
这样,后台请求就完成了它的执行并返回到所需页面。
在发送任何GET请求时遇到重定向时,添加SLEEP(seconds)方法可以解决许多问题