抓取网站时,如何获取读取所有表的代码? - python

我是python的新手,这个网站在学期对我有很大帮助,我希望你们能再次帮助我。

我需要从https://money.cnn.com/data/hotstocks/抓取表格。

这些表是最活跃,最成功和最失败的人。

现在我可以使这段代码对我有用

     import requests
     from bs4 import BeautifulSoup

     url = 'http://money.cnn.com/data/hotstocks/index.html'
     response = requests.get(url)
     html = response.content

     soup = BeautifulSoup(html)

     all_stock = soup.find('div', attrs={'id':'wsod_hotStocks'})

     table = all_stock.find('table',attrs={'class':'wsod_dataTable wsod_dataTableBigAlt'  })

     for row in table.findAll('tr'):
         for cell in row.findAll('td'):
                 print(cell.text)

但这只会使我获得最活跃的表,我不确定我该怎么做才能使我的代码获取网站上的其他2个表。

对于我做错了什么以及如何解决它,我将不胜感激。

我不知道我是否必须创建代码来刮擦每个表,或者是否可以调整我的表。

[这是网站上的HTML,因此您可以了解我在做什么。 1

抓取网站时,如何获取读取所有表的代码? - python

参考方案

实际上,您可以使用pandas.read_html()它将以很好的格式读取所有表。

注意:它将以列表形式返回表。因此您可以使用DataFrame等带有索引的索引(例如print(df[0]))来访问它。

import pandas as pd

df = pd.read_html("https://money.cnn.com/data/hotstocks/")

print(df)

抓取网站时,如何获取读取所有表的代码? - python

Python:BeautifulSoup-根据名称属性获取属性值 - python

我想根据属性名称打印属性值,例如<META NAME="City" content="Austin"> 我想做这样的事情soup = BeautifulSoup(f) //f is some HTML containing the above meta tag for meta_tag in soup(&#…

Requests.get无法与&字符一起使用 - python

我正在使用以下网址进行request.get调用:https://api.datasource.com/apps/ios/ranking?countries=NL&categories=Overall > Kids > 5 & Under&device=ios&ranks=1000 我收到"categor…

Python-使用请求时发布请求失败 - python

使用外壳程序时,我可以通过运行以下命令成功创建新用户curl --user administrator:pasword "Content-Type: application/json" https://localhost:8080/midpoint/ws/rest/users -d @user.json但是,当我尝试使用请求在python…

在返回'Response'(Python)中传递多个参数 - python

我在Angular工作,正在使用Http请求和响应。是否可以在“响应”中发送多个参数。角度文件:this.http.get("api/agent/applicationaware").subscribe((data:any)... python文件:def get(request): ... return Response(seriali…

Python exchangelib在子文件夹中读取邮件 - python

我想从Outlook邮箱的子文件夹中读取邮件。Inbox ├──myfolder 我可以使用account.inbox.all()阅读收件箱,但我想阅读myfolder中的邮件我尝试了此页面folder部分中的内容,但无法正确完成https://pypi.python.org/pypi/exchangelib/ 参考方案 您需要首先掌握Folder的myfo…