gpt4 book ai didi

python - 从抓取元素中提取日期和其他数据

转载 作者:太空宇宙 更新时间:2023-11-04 07:35:42 25 4
gpt4 key购买 nike

我正在使用lxml,urllib和csv编写Python代码,以刮擦a Brazil government site中的语音。

我可以使用XPath找到每个演讲的标题和链接,但是找不到确切的日期,因为演讲日期之前没有特定的标签。

当我使用XPath '//span[@class="summary-view-icon"]/text()时,刮板会带回日期,小时和单词“Página”(葡萄牙语页面)。我知道这个Xpath是不正确的,但是我不知道如何只选择日期。

即使有这个错误,我也可以将报废的内容转换为列表,并进行编辑以删除除日期以外的所有内容。问题是最终清单(如您在下面看到的)还有其他一些我无法删除的字符。

这里似乎有两种解决方案:正确使用XPath或编辑列表中的其他字符。我该怎么办?

['\ n 18/12/2015 \ n','\ n 21/12/2015 \ n','\ n 21/12/2015 \ n','\ n 22/12/2015 \ n',' \ n 22/12/2015 \ n','\ n 22/12/2015 \ n','\ n 11/01/2016 \ n','\ n 19/01/2016 \ n','\ n 2016年1月21日\ n','\ n 26/01/2016 \ n','\ n 27/01/2016 \ n','\ n 27/01/2016 \ n','\ n 28/01/2016 \ n','\ n 01 / 02/2016 \ n','\ n 01/02/2016 \ n','\ n 02/02/2016 \ n','\ n 02/02/2016 \ n','\ n 02/02 / 2016 \ n','\ n 03/02/2016 \ n','\ n 03/02/2016 \ n','\ n 19/02/2016 \ n','\ n 19/02/2016 \ n','\ n 22 / 02/2016 \ n','\ n 26/02/2016 \ n','\ n 26/02/2016 \ n','\ n 02/03/2016 \ n','\ n 03/03 / 2016 \ n','\ n 04/03/2016 \ n','\ n 07/03/2016 \ n','\ n 04/02/2016 \ n','\ n 08/03/2016 \ n','\ n 09 / 03/2016 \ n','\ n 17/03/2016 \ n','\ n 18/03/2016 \ n','\ n 22/03/2016 \ n','\ n 23/03 / 2016 \ n','\ n 23/03/2016 \ n','\ n 30/03/2016 \ n','\ n 31/03/2016 \ n','\ n 01/04/2016 \ n']]

最佳答案

尝试使用followin XPath将结果缩小到仅日期:

//span[@class="summary-view-icon"][i/@class="icon-day"]/text()[normalize-space()]


上述XPath的最后一位( text()[normalize-space()])仅返回非空文本节点。从这里,您仍然需要使用 strip()删除不必要的空格:

query = '//span[@class="summary-view-icon"][i/@class="icon-day"]/text()[normalize-space()]'
dates = root.xpath(query)
result = [date.strip() for date in dates]

关于python - 从抓取元素中提取日期和其他数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36415750/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com