【发布时间】:2021-03-02 15:03:59
【问题描述】:
我正在编写一个代码来抓取选举数据并组织成一个数据集。 这是我所做的:
import requests
import urllib.request
import time
from bs4 import BeautifulSoup
response= requests.get('https://elections2018.wallonie.be/fr/resultats-chiffres?el=PR&id=PRA52011')
soup = BeautifulSoup(response.text,"html.parser")
soup.findAll('tr')
import pandas as pd
我得到了这样的东西:
[<tr>
<td>
<p><img alt="carte de navigation" border="0" id="navmap" name="navmap" src="/sites/default/files/images/election_nav_pro_wl.gif" title="carte de navigation" usemap="#navmap"/></p>
</td>
</tr>,
<tr><th class="text-left w-5"></th><th "="" class="text-left">Liste</th><th></th><th class="text-right w-10">2018</th><th class="text-right w-10">2012</th><th class="text-right w-10">%2018</th><th class="text-right w-10">%2012</th><th class="text-right w-10">+/- %</th><th class="text-right w-10">Sièges</th></tr>,
<tr class="row-odd"><td>1</td><td>MR</td><td class="text-center"></td><td class="text-right">31.099</td><td class="text-right">40.790</td><td class="text-right">15,58%</td><td class="text-right">18,64%</td><td class="text-right">-3,07%</td><td class="c-accent02 text-right">4 (0)</td></tr>,
<tr class="row-even"><td>2</td><td>ECOLO</td><td class="text-center"></td><td class="text-right">23.053</td><td class="text-right">22.412</td><td class="text-right">11,55%</td><td class="text-right">10,24%</td><td class="text-right">+1,30%</td><td class="c-accent02 text-right">3 (+1)</td></tr>,
<tr class="row-odd"><td>3</td><td>PS</td><td class="text-center"></td><td class="text-right">66.358</td><td class="text-right">89.651</td><td class="text-right">33,24%</td><td class="text-right">40,98%</td><td class="text-right">-7,74%</td><td class="c-accent02 text-right">9 (-1)</td></tr>,
我需要一个 csv 文件,其中包含政治名单/政党、区/禁区和每年的选票百分比。
如何抓取所需的数据并将它们放入可读的 csv 文件中?
【问题讨论】:
-
请您 edit 提出您的问题,以显示您想要的输出 CSV 对于该 HTML 的样子。
标签: python csv beautifulsoup