【发布时间】:2021-08-08 07:30:58
【问题描述】:
我是使用 web scrapy 的新手,我一直在尝试从这部分代码中获取正确的 xpath。
我一直在使用这个scrapy命令:
response.xpath('//*[@id="companycontent"]/div/div/div[2]/div/div[6]/div').getall()
这是输出:
['<div class="address">\r\n <h4>Address <span>1</span></h4>\r\n <strong>Office : </strong>1715 , 1714<br>\r\n <strong>Floor : </strong>Floor 17<br>\r\n <strong>Building : </strong>Shatha Tower<br>\r\n Dubai Internet City<br><br>\r\n \t\t</div>']
response.xpath('//*[@id="companycontent"]/div/div/div2/div/div[6]/div').get() '\r\n 地址 1\r\n 办公室:1715、1714
\r\n 楼层:17楼
\r\n 建筑:沙塔塔
\r\n迪拜互联网城
\r\n \t\t'
还有这个:
response.xpath('//div[contains(@class, "address")]/text()').extract()
输出:
['\r\n \r\n \r\n \t\t\t\t\t\t\t\t ', '\r\n ', '\r\n ', '1715 , 1714', '\r\n ', 'Floor 17', '\r\n ', 'Shatha Tower', '\r\n Dubai Internet City', '\r\n \t\t', ' \r\n \t\t\r\n\r\n\t\t\t\t\t\t \r\n ']
response.xpath('//div[contains(@class, "address")]/text()').getall() ['\r\n \r\n \r\n \t\t\t\t\t\t\t\t ', '\r\n ', '\r\n ', '1715 , 1714 ', '\r\n ', '17 楼', '\r\n ', '沙塔塔', '\r\n 迪拜互联网城', '\r\n \t\t', ' \r \n \t\t\r\n\r\n\t\t\t\t\t\t \r\n ']
我确信第一个命令会完成这项工作,但我想知道是否有更短的 xpath 命令来运行脚本。 希望任何人都可以帮助我。
【问题讨论】: