我想从一个气象站点提取数据,并将其复制到csv文件中以供进一步分析。我正在使用python和beauthoulsoup。我一直在努力从天气报告和数值中得到受影响的城市。 下面是HTML的外观:
> <html> <head> <meta charset="utf-8"/> </head> <body> <div
> id="main"> <div id="wettertab">
> <p>
> <strong>
> Letzte Aktualisierung: Do, 10. Aug, 18:41 Uhr
> </strong>
> </p>
> <h1 id="Hessen">
> Hessen
> </h1>
> <h2 id="Gemeinde Aarbergen">
> Gemeinde Aarbergen
> </h2>
> <table>
> <colgroup>
> <col <="" class="firstColumn" col=""/>
> <col class="colorColumn"/>
> <col class="colorColumn"/>
> <col class="colorColumn"/>
> <thead>
> <tr>
> <th>
> Schlagzeile
> </th>
> <th>
> Gültig von
> </th>
> <th>
> Gültig bis
> </th>
> <th>
> Beschreibung
> </th>
> </tr>
> </thead>
> <tr>
> <td>
> Amtliche WARNUNG vor DAUERREGEN
> </td>
> <td>
> Do, 10. Aug, 12:00 Uhr
> </td>
> <td>
> Sa, 12. Aug, 06:00 Uhr
> </td>
> <td>
> Es tritt Dauerregen mit Unterbrechungen auf. Dabei werden Niederschlagsmengen zwischen 40 l/m² und 60 l/m² erwartet.
> </td>
> </tr>
> </colgroup>
> </table>
我需要表格中的四个值:
^{pr2}$我还需要这个地方的名字:
<h2 id="Gemeinde Aarbergen">
Gemeinde Aarbergen
</h2>
“h2”的HTML标记总是在表之前,但它并不属于表本身,正如我所见。在
这是我到现在为止的代码片段:
from urllib.request import urlopen
from bs4 import BeautifulSoup
html = urlopen("html_warnung.html")
soup = BeautifulSoup(html, 'html.parser')
table = soup.findAll("table")
for div in table:
row = ''
rows = div.findAll('td')
for row in rows:
print(row.text)
现在我可以打印表中的值,还可以通过以下方式获取城市名称:
gemeinde_list = []
for gemeinde in soup.findAll('h2'):
gemeinde_list.append(gemeinde.get("id"))
将所有信息导出到csv文件后的最佳方法是什么,以便具有分离的值:
杰梅因德·阿尔伯根
多尔雷根机场
做,10。8月12:00 Uhr
萨,12岁。8月6:00 Uhr
威克塞尔恩德的特瑞特达乌尔根。Dabei werden Niederschlagsmengen zwischen 35 l/m²和50 l/m²Erwarett。在Staulagen werden Mengen bis,70 l/m²。在
我使用的是python3.6 请帮忙。在
由于表或标题都没有任何特征属性,所以可以使用
find_next_siblings
/find_previous_siblings
方法来获取相邻的标记。在
^{pr2}$data
变量是一个嵌套列表,现在可以将其写入csv。在您可以将要保存在csv行中的数据放入元组中。基本上,在提取它们时将它们分配给一个变量,并将它们全部放入一个元组中。 我不完全理解您正在提取的数据的结构。在
但我想:
就像我说的,我不知道田地是什么。你可以给它们起个更好的名字。 然后你将得到:
^{pr2}$希望这有道理。在
相关问题 更多 >
编程相关推荐