为什么爬虫的author的关键字不一样(63讲)?
本帖最后由 飞花落尽 于 2021-8-24 13:21 编辑一个是small.author
另一个是span small 飞花落尽 发表于 2021-8-24 14:09
在Anaconda里输入 author = i.css('small.author::text').extract()
在spider中的Python文件中输入 ...
在我看来并没有什么区别都是一样的东东
small.author::text 这个表示 取small标签 并且类名=author 的正文
span small::text' 这个表示取span标签的子标签small标签的正文
具体就要看应用环境 比如上面的 适合只有一个small标签就不需要添加他的父节点标签span
下面的适和span下面只有一个small 标签就不需要添加类名
总之都是一样的看个人喜好
不知所云 wp231957 发表于 2021-8-24 13:09
不知所云
就是一个在Anaconda里输入 author = i.css('small.author::text').extract()
另一个在spider中的Python文件中输入的是 author = i.css('span small::text').extract() 这是py里的
def parse(self,response):
for i in response.css('div.quote'):
yield(dict(
text = i.css('span.text::text').extract(),
author = i.css('span small::text').extract(),
tags = i.css('div.tags a.tag::text').extract()
)) wp231957 发表于 2021-8-24 13:09
不知所云
这是anaconda里的
>>> for i in response.css('div.quote'):
... text = i.css('span.text::text').extract()
... author = i.css('small.author::text').extract()
... tags = i.css('div.tags a.tag::text').extract()
... print(dict(text=text,author = author,tags=tags)) 飞花落尽 发表于 2021-8-24 13:17
就是一个在Anaconda里输入 author = i.css('small.author::text').extract()
另一个在spider中的Pyth ...
爬虫不都是针对具体网站以及待采集的信息
才好说如何敲代码,你这单独拿出这两句
脱离了上下文,谁知道是咋回事呢 wp231957 发表于 2021-8-24 13:21
爬虫不都是针对具体网站以及待采集的信息
才好说如何敲代码,你这单独拿出这两句
脱离了上下文,谁知道 ...
我主要是想问下css后面的字符串含义是什么? wp231957 发表于 2021-8-24 13:21
爬虫不都是针对具体网站以及待采集的信息
才好说如何敲代码,你这单独拿出这两句
脱离了上下文,谁知道 ...
抽象含义,是审查元素里随便找的吗?还是别的? 飞花落尽 发表于 2021-8-24 13:29
我主要是想问下css后面的字符串含义是什么?
css选择器,其实看个人喜好,我个人比较喜欢xpath有时候xpath取不到,才去考虑其他
至于啥是css选择器,你多解析一些网站,自然明了 wp231957 发表于 2021-8-24 13:33
css选择器,其实看个人喜好,我个人比较喜欢xpath有时候xpath取不到,才去考虑其他
至于啥是css选择器, ...
不是css选择器,是css后面的那个字符串'small.author::text'是从网页的审查元素里随便找的还是特定的去找? wp231957 发表于 2021-8-24 13:33
css选择器,其实看个人喜好,我个人比较喜欢xpath有时候xpath取不到,才去考虑其他
至于啥是css选择器, ...
就是css选择器参数的含义 飞花落尽 发表于 2021-8-24 13:36
不是css选择器,是css后面的那个字符串'small.author::text'是从网页的审查元素里随便找的还是特定的去找 ...
审查元素里面右键有个css的复制,你粘一下就知道了 wp231957 发表于 2021-8-24 13:40
审查元素里面右键有个css的复制,你粘一下就知道了
<span>by <small class="author" itemprop="author">Albert Einstein</small>
<a href="/author/Albert-Einstein">(about)</a>
</span>
这个是网页中author的数据 wp231957 发表于 2021-8-24 13:40
审查元素里面右键有个css的复制,你粘一下就知道了
在Anaconda里输入 author = i.css('small.author::text').extract()
在spider中的Python文件中输入的是 author = i.css('span small::text').extract()
这两个提取的关键字是怎么看的?我还是没懂 wp231957 发表于 2021-8-24 13:40
审查元素里面右键有个css的复制,你粘一下就知道了
在Anaconda里输入 author = i.css('small.author::text').extract()
在spider中的Python文件中输入的是 author = i.css('span small::text').extract()
这两个关键字是怎么看的?我还是没懂 飞花落尽 发表于 2021-8-24 13:57
by Albert Einstein
(about)
在Anaconda里输入 author = i.css('small.author::text').extract()
在spider中的Python文件中输入的是 author = i.css('span small::text').extract()
这两个关键字是怎么找的?我还是没懂 wp231957 发表于 2021-8-24 13:40
审查元素里面右键有个css的复制,你粘一下就知道了
在Anaconda里输入 author = i.css('small.author::text').extract()
在spider中的Python文件中输入的是 author = i.css('span small::text').extract()
两个参数为什么不一样呢?我还是没懂 翻译翻译,就是定位元素的条件不一样。
第一个是 直接定位一个small标签,该标签的类名为author的正文
第二个是 定位一个span标签下的small标签的正文
定位方式不一样,可最后都指向同一个地方
具体要怎么定位,只能具体问题具体分析
比如,
第一个 可能存在该网页有多个类名为author的small标签的情况
第二个 也可能出现span标签下有多个small标签的情况 wp231957 发表于 2021-8-24 14:35
在我看来并没有什么区别都是一样的东东
small.author::text 这个表示 取small标签 并且类名=autho ...
懂了,谢谢老哥
页:
[1]
2