作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
下面是 HTML,我正在处理,我正在尝试获取“Gardroplar”文本,但它返回空
以 <ol class="nav align-items-center flex-nowrap text-nowrap overflow-auto hide-scrollbar>
开头
<li>
<a href="/">
<svg class="icon-home m-0">
<use
xlink:href="/_ui/responsive/theme-alpha/images/icons.svg#icon-home"
></use>
</svg>
</a>
</li>
<li>
<svg class="icon-arrow2 m-0">
<use
xlink:href="/_ui/responsive/theme-alpha/images/icons.svg#icon-arrow1"
></use>
</svg>
<a href="/mobilya/c/109">Mobilya</a>
</li>
<li>
<svg class="icon-arrow1 m-0">
<use
xlink:href="/_ui/responsive/theme-alpha/images/icons.svg#icon-arrow1"
></use>
</svg>
<span class="top-breadcrumb">
<a
class="d-inline-flex align-items-center border pl-10 rounded-sm"
href="/mobilya/gardiroplar/c/109011"
data-toggle="dropdown"
aria-expanded="false"
>Gardıroplar<svg class="icon-arrow7 m-0 rotate-top">
<use
xlink:href="/_ui/responsive/theme-alpha/images/icons.svg#icon-arrow7"
></use>
</svg>
</a>
<ul class="dropdown-menu px-15 py-0 border-0 text-c2">
<li class="border-bottom py-10">
<a
class="d-flex align-items-center justify-content-between pl-5 py-5 reverse font-weight-bold"
href="/mobilya/gardiroplar/c/109011"
>Gardıroplar</a
>
</li>
<li class="px-10 border-bottom">
<a
class="d-flex align-items-center justify-content-between pl-5 py-5 reverse"
href="/gardiroplar/kapakli-gardiroplar/c/109011002"
>Kapaklı Gardıroplar<svg class="icon-arrow1 ml-5">
<use
xlink:href="/_ui/responsive/theme-alpha/images/icons.svg#icon-arrow1"
></use>
</svg>
</a>
</li>
<li class="px-10 border-bottom">
<a
class="d-flex align-items-center justify-content-between pl-5 py-5 reverse"
href="/gardiroplar/surgulu-gardiroplar/c/109011003"
>Sürgülü Gardıroplar<svg class="icon-arrow1 ml-5">
<use
xlink:href="/_ui/responsive/theme-alpha/images/icons.svg#icon-arrow1"
></use>
</svg>
</a>
</li>
<li class="px-10 border-bottom">
<a
class="d-flex align-items-center justify-content-between pl-5 py-5 reverse"
href="/gardiroplar/bez-dolaplar/c/109011001"
>Bez Dolaplar<svg class="icon-arrow1 ml-5">
<use
xlink:href="/_ui/responsive/theme-alpha/images/icons.svg#icon-arrow1"
></use>
</svg>
</a>
</li>
</ul>
</span>
</li>
<li>
<svg class="icon-arrow1 m-0">
<use
xlink:href="/_ui/responsive/theme-alpha/images/icons.svg#icon-arrow1"
></use>
</svg>
<a href="/gardiroplar/kapakli-gardiroplar/c/109011002">Kapaklı Gardıroplar</a>
</li>
</ol>
我的代码:
response.xpath('//ol[@class="nav.align-items-center.flex-nowrap.text-nowrap.overflow-auto.hide-scrollbar.tab-title"]//li[svg[contains(@class,"icon-arrow2")]]/text()').getall()
最佳答案
如果 icon-arrow2
类是固定值,您可以使用以下 XPath:
"//li[./*[contains(@class,'icon-arrow2')]]//a"
完整的命令是
response.xpath("//li[./*[contains(@class,'icon-arrow2')]]//a/text()").getall()
UPD
在您分享该页面的实际链接后,我可以为您提供更好的定位器。
这将起作用:
response.xpath("//li[./*[contains(@class,'icon-arrow')]]/a[contains(@href,'mob')]/text()").getall()
UPD2
这将为您提供 Kapaklı Gardıroplar
文本:
response.xpath("//li[./*[contains(@class,'icon-arrow')]]/a[contains(@href,'gar')]/text()").getall()
UPD3
这将为您提供您定义的 Gardıroplar
文本:
response.xpath("//li[@class='border-bottom py-10']/a/text()").getall()
关于python - 尝试使用 scrapy "Mobilya"通过 xpath 从 html 获取文本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/74231883/
下面是 HTML,我正在处理,我正在尝试获取“Gardroplar”文本,但它返回空 以 开头 Mobilya
下面是 HTML,我正在处理,我正在尝试获取“Gardroplar”文本,但它返回空 以 开头 Mobilya
我是一名优秀的程序员,十分优秀!