我正在尝试制作一个网络爬虫,它将使用我的凭据登录学校网站,然后爬取该网站的某些部分。我正在使用此处找到的 Beautiful Soup Python 库:
http://www.crummy.com/software/BeautifulSoup/bs4/doc/
我可以获得用户名和密码字段的正确源代码,但我不知道如何提供它们。另外,我在提交它们时也遇到了同样的问题。我已经抓取了“提交”按钮的源代码,但我不知道如何请求登录。
谢谢,
我正在尝试制作一个网络爬虫,它将使用我的凭据登录学校网站,然后爬取该网站的某些部分。我正在使用此处找到的 Beautiful Soup Python 库:
http://www.crummy.com/software/BeautifulSoup/bs4/doc/
我可以获得用户名和密码字段的正确源代码,但我不知道如何提供它们。另外,我在提交它们时也遇到了同样的问题。我已经抓取了“提交”按钮的源代码,但我不知道如何请求登录。
谢谢,
您可以使用Mechanize,一个模拟浏览器的库,也可以手动发送 POST/GET 请求。
Mechanize 的主页上有一个完整的示例,您可以尝试一下。
如果你想手动请求,我通常只打开 Chrome 的 JS 控制台,序列化表单并查看发送了哪些参数:
> $('form#search').serialize()
"q="
POST
然后,您只需使用这些参数向该 URL发送请求:
import requests # Install `requests` if you want to use my example code
session = requests.session() # So your cookies persist across requests
response = session.post('your_url', data={
'q': 'search string'
}).text