我正在尝试抓取新闻报道的内容以进行研究。我能够获取特定公司的所有新闻文章的标题和URL,例如苹果通过金融时报网站的搜索框。但是,我还需要获取每个新闻的日期和内容。因此,我尝试使用ID和密码登录,以便可以针对在搜索结果中找到的每个URL抓取新闻内容和日期。
但是,即使我尝试登录后,它也不会自动进入FT.com要求您订阅的页面,而不会浏览page2 = urlopen(realurl)
中的新闻URL。甚至在我尝试登录后。
几个小时以来,我一直在尝试解决我的登录问题,但似乎找不到解决方案。任何帮助将非常感激。谢谢。
这是我的代码
from urllib.request import urlopen
from bs4 import BeautifulSoup
from datetime import datetime, timedelta
import time
from robobrowser import RoboBrowser
page = urlopen('https://www.ft.com/search?q=apple')
soup = BeautifulSoup(page, features="html.parser")
posts = soup.findAll("div", {"class": "o-teaser__heading"})
urlin = 'https://accounts.ft.com/login?location=https%3A%2F%2Fwww.ft.com%2F'
browser = RoboBrowser()
browser.open(urlin)
form = browser.get_form(id="email-form")
form['email'] = "xxx@gmail.com"
browser.submit_form(form)
form2 = browser.get_form(id="login-form")
form2['password'] = "password"
browser.submit_form(form2)
for post in posts:
time.sleep(1)
url = post.a['href']
realurl = "https://www.ft.com" + url
title = post.a.text
print(realurl)
print(title)
page2 = urlopen(realurl)
soup2 = BeautifulSoup(page2, features="html.parser")
findcontent = soup2.find("div", {"class": "article__content"})
print(findcontent)