从未找到与表相关的标签的网页中收集数据

如何解决从未找到与表相关的标签的网页中收集数据

我正在尝试从URL India Covid 19 cases中提取“ COVID-19 Statewise Status”数据。尽管页面以表格形式显示数据,但我认为没有直接嵌入的表。我没有找到标题的<table>,<tr>,<td>

有人可以帮我提取表格数据吗?

from urllib.request import Request,urlopen
from bs4 import BeautifulSoup
url = 'https://www.mygov.in/covid-19/'
html = urlopen(url)
soup = BeautifulSoup(html,'lxml')
type(soup)
title = soup.title
print(title)

<title>#IndiaFightsCorona COVID-19 in India,Corona Virus Tracker | mygov.in </title>

text = soup.get_text()
print(soup.text)    

#IndiaFightsCorona COVID-19 in India,Corona Virus Tracker | mygov.in 

@import url("//www.mygov.in/modules/system/system.base.css?qfdcj4");
@import url("//www.mygov.in/modules/system/system.menus.css?qfdcj4");
@import url("//www.mygov.in/modules/system/system.messages.css?qfdcj4");

tables= soup.find_all('table')
print(tables)

[]

rows= soup.find_all('tr')
print(rows[:10])

[]

我想通过单击下面图片中显示的“ COVID-19 Statewise Status”标题末尾的“ +”按钮从出现的表中提取数据。

enter image description here

enter image description here

解决方法

根据我对您的帖子的理解,您必须删除表中可用的 Covid19 状态数据。

使用python尝试以下方法-requests涉及到请求时,简单,直接,可靠,快速且代码更少。

  1. 首先,我检查了是否公开了任何API URL /调用,这些API / URL以JSON格式提供数据,可以将其用作提取所需数据的目的,并且可以使用。 API CALL URL
  2. 获取URL后,我向该API发出了请求,作为响应,我获得了所有JSON格式的数据。
  3. 最后,我遍历了对于已确诊病例,在役病例,死亡和康复病例所需的重要数据,以及它们之间相应的差异。您可以以相同的方式获取其他详细信息,例如Covid便利设施信息,Epass URL等。
import requests
from urllib3.exceptions import InsecureRequestWarning
requests.packages.urllib3.disable_warnings(InsecureRequestWarning)

def scrap_covid19_india_stats():

URL = 'https://www.mygov.in/sites/default/files/covid/covid_state_counts_ver1.json'

json_data = requests.get(URL,verify=False).json()

for state_wise in json_data['Name of State / UT']:
    print('-'*100)
    print('State : ' + json_data['Name of State / UT'][state_wise] + ',' +
          'Total Confirmed Cases : ' + str(json_data['Total Confirmed cases'][state_wise]) + ',' +
          'Active Cases : ' + str(json_data['Active'][state_wise]) + ',' +
          'Recovered/Discharged/Migrated: ' + str(json_data['Cured/Discharged/Migrated'][state_wise]) + ',' +
          'Deceased : ' + str(json_data['Death'][state_wise]) + ',' + 
          'Diff. Confirmed Cases : ' + str(json_data['diff_confirmed_covid_cases'][state_wise]) + ',' +
          'Diff. Active Cases : ' + str(json_data['diff_active_covid_cases'][state_wise]) + ',' +
          'Diff. Cured Cases : ' + str(json_data['diff_cured_discharged'][state_wise]) + ',' +
          'Diff. Deceased Cases : ' + str(json_data['diff_death'][state_wise]))
    print('-'*100)

scrap_corvid19_india_stats()

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐


Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其他元素将获得点击?
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。)
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbcDriver发生异常。为什么?
这是用Java进行XML解析的最佳库。
Java的PriorityQueue的内置迭代器不会以任何特定顺序遍历数据结构。为什么?
如何在Java中聆听按键时移动图像。
Java“Program to an interface”。这是什么意思?
Java在半透明框架/面板/组件上重新绘画。
Java“ Class.forName()”和“ Class.forName()。newInstance()”之间有什么区别?
在此环境中不提供编译器。也许是在JRE而不是JDK上运行?
Java用相同的方法在一个类中实现两个接口。哪种接口方法被覆盖?
Java 什么是Runtime.getRuntime()。totalMemory()和freeMemory()?
java.library.path中的java.lang.UnsatisfiedLinkError否*****。dll
JavaFX“位置是必需的。” 即使在同一包装中
Java 导入两个具有相同名称的类。怎么处理?
Java 是否应该在HttpServletResponse.getOutputStream()/。getWriter()上调用.close()?
Java RegEx元字符(。)和普通点?