使用Scrapy修正xpath

lbsnaicq  于 2022-11-09  发布在  其他
关注(0)|答案(1)|浏览(129)
import scrapy
from scrapy.http import Request

class PushpaSpider(scrapy.Spider):
    name = 'test'
    start_urls = ['https://ap-rk.com/advokat-panfilov-vladimir-vladimirovich-moskva-otzyvy-telefon-adres-chasy-raboty-foto/']

    def parse(self, response):
        website=response.xpath("//td//strong[contains(.,'Официальный сайт:')]/following-sibling::td/text()").get()
        yield{
            'website':website
        }

中 的 每 一 个
我 想 尝试 提取 link , 但 他们 会 给 我 什么 都 没有 , 这些 是 页面 链接 https://ap-rk.com/advokat-panfilov-vladimir-vladimirovich-moskva-otzyvy-telefon-adres-chasy-raboty-foto/

xzlaal3s

xzlaal3s1#

没有人可以阻止你使用像Scrapy这样的复杂解决方案,当同样的结果可以在2行代码中实现时(好吧,3):

import pandas as pd

dfs = pd.read_html('https://ap-rk.com/advokat-panfilov-vladimir-vladimirovich-moskva-otzyvy-telefon-adres-chasy-raboty-foto/')
dfs[0]

这将返回:

0   1
0   NaN Телефон: +7 (495) 646-0697
1   Рабочий адрес:  Москва
2   NaN г. Москва, ул. Бутырский вал, дом № 68, офис №403
3   Специализация:  корпоративное право предпринимательское право
4   Об адвокате:    NaN
5   Информация: Адвокатская палата: Республики Башкортостан Но...
6   Электронная почта:  order@chelovekizakon.ru
7   Официальный сайт:   https://chelovekizakon.ru

编辑:由于我试图提出一个简单的解决方案,使OP愤怒,这里是正确的XPATH来定位有问题的URL:

"//td/strong[text()='Официальный сайт:']/parent::td//following-sibling::td"

相关问题