python-3.x - 如何在本网站的 //div[@class='body'] 中抓取所有文本?
问题描述
import scrapy
class ActScraper1Spider(scrapy.Spider):
name = 'act_scraper_1'
allowed_domains = ['sso.agc.gov.sg']
start_urls = ['https://sso.agc.gov.sg/Act/AA2004']
def parse(self, response):
info = response.xpath("//div[@class='body']//text()").getall()
yield {
'info': info
}
所以我上面的代码完成了部分工作,因为它只从 div[@class='body'] 标记的 8 个表中抓取了第一个表
如何让我的刮刀刮掉所有表格中的所有文本?谢谢!
解决方案
在浏览器中禁用 Javascript 并重新加载页面。然后您会看到有效的最新 xpath(您可以在 chrome 浏览器上使用“Quick Javascipt Switcher”来禁用 js)
推荐阅读
- python - 如何在 seaborn 图形级箱线图上叠加数据点
- java - 如何在用户输入密码时显示星号 (*),然后在 Java 中将密码存储为字符串
- ruby-on-rails - 在部署中使用额外的 gem
- cypress - 您可以配置赛普拉斯以记录对文件的请求和响应吗?
- python - 使用pymupdf python从pdf中提取文本和图像
- mysql - 我想根据 mysql 中的 Column_B (String_DDMONTHNAMEYEAR) 值更新 column_A。Column_B 是动态的
- node.js - “this.isModified 不是函数”Mongoose?
- reactjs - 带路由的条件渲染
- xml - WINMERGE 显示中文字符,但它只是 XML
- c++ - 具有默认参数的函数的函数别名