使用Scrapy刮擦特定类或样式内的h2标签

艾奇西斯爵士

我正在尝试抓取此网站https://www.tahko.com/fi/tapahtumat/我已经能够在主表上抓取事件,但是现在我需要抓取与每个表相对应的月份。

月份(例如Lokakuu 2020或Marraskuu 2020)在h2标签内,样式为“ font-size:32px;”。并且位于类(这是整个td区域)“ col-lg-8 col-md-8 col-sm-12 col-xs-12”之内。

这是HTML代码。将其放置在具有上述类的div内。

<h2 style="font-size:32px;">LOKAKUU 2020</h2>

这几个月我该怎么抓?

到目前为止,我尝试过的是:

fetch("https://www.tahko.com/fi/tapahtumat/")

full = response.xpath('//*[@class="col-lg-8 col-md-8 col-sm-12 col-xs-12"]')

months = full.xpath('/*[@style="font-size:32px;"]')

额外的问题:将这几个月与下面的事件表进行匹配最简单的方法是什么?

巴杜克

我不想建立一个完整的项目,但是我希望这可以帮助您入门。

import requests
from lxml import html

header_month_xpath = '//*[@style="font-size:32px;"]/text()'
month_widget_xpath = '//*[@class="widget"]/a/text()'

page = requests.get("https://www.tahko.com/fi/tapahtumat/").text

print(html.fromstring(page).xpath(header_month_xpath))
print(html.fromstring(page).xpath(month_widget_xpath))

输出:

['LOKAKUU 2020', 'MARRASKUU 2020', 'JOULUKUU 2020']
['Kaikki menovinkit', 'Tammikuu 2021', 'Helmikuu 2021', 'Maaliskuu 2021', 'Huhtikuu 2021', 'Toukokuu 2021', 'Kesäkuu 2021', 'Heinäkuu 2021', 'Elokuu 2021', 'Syyskuu 2021', 'Lokakuu 2020', 'Marraskuu 2020', 'Joulukuu 2020']

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

用scrapy刮擦特定表元素

在div类中抓取特定的h2标签

使用XMLHTTP进行刮擦会在特定的类名上引发错误

如何使用scrapy从嵌入在h2下的标签中提取文本?

如何使用BeautifulSoup刮擦标签之间的嵌套文本?

是否可以使用xpath刮擦div下的标签?

在摘要标签内使用h2标签在语义上是否正确?

使用beautifulsoup python在span类HTML中刮擦值

是否可以使用rvest刮擦类本身?

Scrapy:刮擦前的预防措施

scrapy:如何刮擦<ul> <li>

使用BeautifulSoup刮擦URL

Angular:还是 h2 标签内的运算符?

将span元素环绕在h2标签内的特定元素和文本节点周围

类样式取决于元素 (h2/h3) 与嵌套的 SCSS/&符号?

在同一个类中设置h1和h2的样式

h2类的appendChild

使用漂亮的汤只在具有类的html元素中刮擦文本

在 h2 部分之后使用特定单词捕获 h2 部分

我想使用JavaScript将H3标签替换为H2标签

无法使用BeautifulSoup4(Python 3)刮擦特定的表

使用刮擦飞溅单击按钮

使用BeautifulSoup刮擦Javascript注入的文本

使用CsQuery刮擦JavaScript数组数据

使用硒的坚硬刮擦盒

如何在python中使用漂亮的汤为<h2>标签过滤特定的<p>标签,然后从中构建字典

除了使用BeautifulSoup和Scrapy之外,还有其他方法无法刮掉不可刮擦的网站吗?

如何在BeautifulSoup中使用元素的样式定义(例如填充,字体大小等)对元素进行Web刮擦

标题标签的默认CSS样式是什么?(H1,h2,h3,h4,h5)