带BS4和html的PythonWebScraping未正确下载

2024-03-29 11:11:44 发布

您现在位置:Python中文网/ 问答频道 /正文

我一直试图从网站上搜集信息: https://www.tddirectinvesting.co.uk/share-dealing/daily-trading-ideas

我想要的信息是在元素中的,类是“RecogniaEventSummaryBodyLinks”

但是当我试图下载html文件并打印它时,它显示html文件没有正确下载。我的意思是,当我把从python代码中得到的整个html文本复制并粘贴到notepad++中,并按CTRL+F来查找这些元素是否在html文本中时,它们不在那里。你知道吗

我也试着直接从网站上手动下载文件,但这也不起作用。你知道吗

下面是我的代码(python):

import mechanize
import cookielib
from bs4 import BeautifulSoup

def viewPage(url,proxy,userAgent):
    br = mechanize.Browser()
    cookieJar = cookielib.LWPCookieJar()
    br.set_cookiejar(cookieJar)
    br.set_proxies(proxy)
    br.addheaders = userAgent
    page = br.open(url)
    htmlFile = page.read()
    for cookie in cookieJar:
          print("cookie:  " + str(cookie))
          print("")
    return htmlFile

def ScrapeFigures(url):
    html = viewPage(url,proxyAdress,agentStringSample)
    soup = BeautifulSoup(html,"html.parser")
    info = soup.find("a",attrs={"class":"RecogniaEventSummaryBodyLinks"})  

我尝试打印变量info,但它返回null。你知道吗

但是,在此之后,我尝试将上述代码中整个soup变量的python输出复制粘贴到另一个文本文件中,并将其保存为html文件。当我用我的浏览器(Chrome)打开这个html文件时,我需要的元素在页面上,尽管没有以文本格式出现在html文件中。所以我只是想知道,这是不是因为某个JS在后台打开页面时触发的?你知道吗

我的问题是,我如何才能刮去上述元素?有办法绕过这个奇怪的虫子吗?你知道吗

谢谢你抽出时间


Tags: 文件代码文本brimport信息url元素