(对不起我的英语我会尽力的):
我是python的新手,我正在寻求帮助进行一些网络抓取。我已经有一个功能代码,以获得我想要的链接,但网站是由一个密码保护。 在我读到的许多问题的帮助下,我设法得到了一个工作代码,以刮网站后,登录,但我想要的链接是在另一个网页:
登录页面是http://fantasy.trashtalk.co/login.php
登录后的登录页(我用这个代码抓取的那个)是http://fantasy.trashtalk.co/
我想要的页面是http://fantasy.trashtalk.co/?tpl=classement&t=1
所以我有了这个代码(有些导入可能是无用的,它们来自另一个代码):
from bs4 import BeautifulSoup
import requests
from lxml import html
import urllib.request
import re
username = 'myusername'
password = 'mypass'
url = "http://fantasy.trashtalk.co/?tpl=classement&t=1"
log = "http://fantasy.trashtalk.co/login.php"
values = {'email': username,
'password': password}
r = requests.post(log, data=values)
# Not sure about the code below but it works.
data = r.text
soup = BeautifulSoup(data, 'lxml')
tags = soup.find_all('a')
for link in soup.findAll('a', attrs={'href': re.compile("^https://")}):
print(link.get('href'))
我明白这段代码只允许我访问登录页面,然后抓取下一个页面(登陆页面),但我不知道如何“保存”我的日志信息来访问我想要的页面。在
我想我应该在登录代码后添加类似的内容,但当我这样做时,它只会从登录页面中刮取我的链接:
^{pr2}$我在这里也用“话题”来读?但我没能成功。在
任何帮助都将不胜感激。谢谢你抽出时间。在
问题是,您需要通过会话对象(而不是请求对象)来保存登录凭据。我已经修改了下面的代码,您现在可以访问位于
scrape_url
页面中的html标记。祝你好运!在相关问题 更多 >
编程相关推荐