如何解决使用Scrapy和xpath提取文本
我正在尝试使用xpath从以下html提取文本:
<p class="event-meta" xpath="1">Nanizanka / <span itemprop="genre">Akcija</span>,<span itemprop="partOfSeason" itemscope="" itemtype="http://schema.org/CreativeWorkSeason">
<span itemprop="seasonNumber">8</span>. sezona,</span>
<span itemprop="episodeNumber">9</span>. del,United states of America
<br><i class="fa fa-clock-o"></i> <span>
51
</span> min |
IMDB: 7,3 |
<span>★</span>
<span>★</span>
<span>★</span>
<span>★</span>
<span>★</span>
<span>★</span>
<span>★</span>
<span class="hollow-star">★</span>
<span class="hollow-star">★</span>
<span class="hollow-star">★</span>
</p>
我在提取美利坚合众国和IMDB分数时遇到问题,因为它们没有任何标签? 我无法超越
response.xpath("//div[@class='row nogutter article']/div[@class='col-10']/main/article/p[@class='event-meta']//text()").extract()
因为我只需要将国家和IMDB分数作为两个单独的项目即可。
非常感谢您的帮助。
解决方法
score = response.xpath('//text()[contains(.,"IMDB:")]').re_first(r'IMDB:\s*(\S+)')
country = response.xpath('//span[@itemprop][last()]/following-sibling::text()').get()
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。