python - 如何读取div id

标签 python scrapy

我有这个 HTML 代码:

> <div class="predictions"> <div class = "competition" id = "07675"> <div '>, <div
> class = "competition"> <div class = "hea"> <div class = "competition"
> <div class = "hea '>, <div class =" competition "> <div class ="
> class = "competition" id = "07560"> <div '>,

我正在尝试从 html 中读取标签 id 。我正在使用下面的代码,但它不起作用。

response.css ('.//div[@class = "predictions"]/div[id] :: attr (id)')

enter image description here

最佳答案

您正在使用带有 xpath 表达式的 CSS 选择器。

如果你想使用xpath表达式,你应该这样做:

response.xpath(xpression)

此外,您想要的元素的 xpath 表达式可能是这样的:

response.xpath('//div[@class="competition"]/@id')

此表达式将搜索任何具有 class="competition"div 并返回其 id 属性。你发布的 HTML 有点乱,所以我没有真正测试它,但它看起来是正确的。如果您对构建 xpath 有任何疑问,或者想自行改进它,这里有 great guide .

关于python - 如何读取div id,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52338156/

相关文章:

python - 如何在Python抽象语法树(AST)中获取实际的用户定义变量名称?

python - 如何在python中的scrapy中启用cookiemiddleware

python - 使用Scrapy从HTML数据存储中获取数据

python - 如何使用正则表达式删除制表符和换行符

python - 使用 PyQt4 抓取 Javascript 驱动的网页 - 如何访问需要身份验证的页面?

python - Cron 函数缺少参数

python - 如何使用 xpath 排除某些元素?

python - 重采样长度不匹配错误

python - 将我的项目管道更改为 if 和 elif 语句后,Spider 未返回所有结果

mime - 如何在使用scrapy爬行时跳过某些文件类型?