我不是一个程序员。只是学习。我想使用Python从我国的选举管理局提取(公共)选举数据。这是为了学术目的,但我也想发展我的编程技能。当然,我存储的所有数据都将公开发布。
我需要知道哪些python模块允许我进入网站并阅读HTML以识别我需要收集的某些数据。我只是希望得到一些关于如何做的指导方针,或者任何其他人的建议
我希望提取每个政党的选票,并将提供的额外数据完全分解:州/市/县/中心/表格。最后,我希望将其存储在csv或xlsx中(我想我会使用openpyxl
或xlsxwriter
)。
我的想法是制作一个程序:
1) 获取链接输入(例如);
2) 它识别HTML左侧每个州的链接(Amazonas、Anzoategui等);
3) For循环遍历每个状态并找到每个状态的url(这是一个HTML,所以我想它会搜索并提取<a>
标记,对吧?);
4) 与市政当局重复;
4) 重复使用"Parroquia"(县);
5) 每个投票中心重复;
6) 最后,对于每个中心的每个投票表(1、2、3……任意);
7) 接下来,它存储每个政党的结果(例如,我会手动按下每个候选人的名字,识别政党的LOGO并存储其选票(示例中为30))。它还应该在最后存储来自"技术表"的数据。
最终结果应该是存储所有数据:州、市、县、中心、表格以及各方的结果。
以下内容将有所帮助:
来自selenium导入Web驱动程序 -用于设置新的Web驱动程序以访问网站。(适用于Chrome的效果很好)
从selenium.webdriver.comn.by import by -用于通过css选择器、标记名、id等选择html元素。
来自selenium.webdriver.support.ui import WebDriverWait -用于设置url加载的最短加载时间
来自selenium.webdriver.support import expected_conditions as EC
-设置预期条件,以便在等待加载url时执行操作。例如,一个条件可能是等待,直到所有<a>
标签都已加载。
从selenium.webdriver.com.mon.keys导入密钥 -用于模拟按键或将文本发送到HTML元素
从BeautifulSoup导入Beautiful Soup -用于通过下载的HTML文档进行解析
import re -启用正则表达式
导入xlwt -用于写入Microsoft Excel工作簿
从xlutils.copy导入副本 -用于创建Microsoft Excel工作簿的副本
导入时间 -用于在Python代码执行时设置暂停时间
import xlrd -用于读取Microsoft Excel工作簿
要下载的软件包:
-
xlrd 0.9.4
-
xlutils 1.7.1
-
xlwt 1.0.0
-
BeautifulSoup 4.4.1
-
硒2.48.0
以上大部分内容都可以从python包索引下载