您现在的位置是:网站首页> 编程资料编程资料
CSS选择器实现字段解析CSS :visited伪类选择器隐秘往事回忆录dw中css选择器nthchild怎么使用?css选择器中有小数点的标签获取方法CSS3 :default伪类选择器使用简介CSS选择器的新用法(推荐)CSS中选择器的权重值的计算Dreamweaver中css选择器中的类怎么使用?详解CSS3选择器:nth-child和:nth-of-type之间的差异总结30个CSS3选择器 css3类选择器之结合元素选择器和多类选择器用法
2021-09-04
945人已围观
简介 这篇文章主要介绍了CSS选择器实现字段解析的相关资料,需要的朋友可以参考下
根据上面所学的CSS基础语法知识,现在来实现字段的解析。首先还是解析标题。打开网页开发者工具,找到标题所对应的源代码。

发现是在div class="entry-header"下面的h1节点中,于是打开scrapy shell 进行调试

但是我不想要
这种标签该咋办,这时候就要使用CSS选择器中的伪类方法。如下所示。

注意的是两个冒号。使用CSS选择器真的很方便。同理我用CSS实现字段解析。代码如下
# -*- coding: utf-8 -*- import scrapy import re class JobboleSpider(scrapy.Spider): name = 'jobbole' allowed_domains = ['blog.jobbole.com'] start_urls = ['http://blog.jobbole.com/113549/'] def parse(self, response): # title = response.xpath('//div[@class = "entry-header"]/h1/text()').extract()[0] # create_date = response.xpath("//p[@class = 'entry-meta-hide-on-mobile']/text()").extract()[0].strip().replace("·","").strip() # praise_numbers = response.xpath("//span[contains(@class,'vote-post-up')]/h10/text()").extract()[0] # fav_nums = response.xpath("//span[contains(@class,'bookmark-btn')]/text()").extract()[0] # match_re = re.match(".*?(\d+).*",fav_nums) # if match_re: # fav_nums = match_re.group(1) # comment_nums = response.xpath("//a[@href='#article-comment']/span").extract()[0] # match_re = re.match(".*?(\d+).*", comment_nums) # if match_re: # comment_nums = match_re.group(1) # content = response.xpath("//div[@class='entry']").extract()[0] #通过CSS选择器提取字段 title = response.css(".entry-header h1::text").extract()[0] create_date = response.css(".entry-meta-hide-on-mobile::text").extract()[0].strip().replace("·","").strip() praise_numbers = response.css(".vote-post-up h10::text").extract()[0] fav_nums = response.css("span.bookmark-btn::text").extract()[0] match_re = re.match(".*?(\d+).*", fav_nums) if match_re: fav_nums = match_re.group(1) comment_nums = response.css("a[href='#article-comment'] span::text").extract()[0] match_re = re.match(".*?(\d+).*", comment_nums) if match_re: comment_nums = match_re.group(1) content = response.css("div.entry").extract()[0] tags = response.css("p.entry-meta-hide-on-mobile a::text").extract()[0] pass 
总结
以上所述是小编给大家介绍的CSS选择器实现字段解析,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对网站的支持!
相关内容
- CSS实现Tab页切换实例代码怎样实现H5+CSS3手指滑动切换图片的示例代码css实现导航切换的实例代码用CSS实现Tab页切换效果的示例代码CSS使用classList实现两个按钮样式的切换纯CSS3制作页面切换效果的实例代码
- CSS使用position:sticky 实现粘性布局的方法position:sticky用法介绍及浏览器兼容性position:sticky 粘性定位的几种巧妙应用详解
- css实现多边形和梯形盒阴影技巧CSS 阴影动画优化技巧JS+css3实现带阴影可点击旋转的3D立体杯子效果源码CSS阴影效果的比较之drop-Shadow与box-ShadowCSS 翘边阴影的实现代码CSS 曲线阴影实现的示例代码css实现悬浮效果的阴影的方法示例CSS中使用文本阴影与元素阴影效果
- 利用CSS3 动画 绘画 圆形动态时钟纯CSS3实现运行时钟的示例代码css3 利用transform打造走动的2D时钟css3一个简易的 LED 数字时钟实现方法CSS实现漂亮的时钟动画效果的实例代码
- css3 矩阵的使用详解css3中transform属性实现的4种功能详解CSS3.0(Cascading Style Sheet) 层叠级联样式表纯CSS3实现div按照顺序出入效果CSS3实现列表无限滚动/轮播效果css3 利用transform-origin 实现圆点分布在大圆上布局及旋转特效CSS3实现的侧滑菜单CSS3实现的3D隧道效果用CSS3画一个爱心css3 实现文字闪烁效果的三种方式示例代码六种css3实现的边框过渡效果
- 用CSS实现Tab页切换效果的示例代码怎样实现H5+CSS3手指滑动切换图片的示例代码css实现导航切换的实例代码CSS实现Tab页切换实例代码CSS使用classList实现两个按钮样式的切换纯CSS3制作页面切换效果的实例代码
- CSS3 :default伪类选择器使用简介css3的focus-within选择器的使用详解如何使用CSS3中的结构伪类选择器和伪元素选择器CSS3 新增选择器的实例css3 伪类选择器快速复习小结css3之UI元素状态伪类选择器实例演示CSS3选择器新增问题的实现
- CSS布局方案小结详解css布局实现左中右布局的5种方式CSS实现多行多列的布局的实例代码css Flex布局的可伸缩性(Flexibility)浅谈css网页的几种布局如何理解 CSS 布局和块级格式上下文浅谈css sticker-footer 布局详解使用CSS3的@media来编写响应式的页面
- CSS清除浮动float的三种方法小结详解css清除浮动float的七种常用方法总结和兼容性处理CSS的position定位和float浮动详解CSS使用float属性设置浮动元素的实例教程理解CSS浮动float、定位positioncss浮动(float/clear)使用讲解css浮动(float,clear)通俗讲解经验分享html/css中float浮动的用法实例详解
- CSS宽高等比布局的方法css实现元素居中的N种方法div水平布局两边对齐的三种实现方法waterfall瀑布流布局+动态渲染的实现页面中有间隔的方格布局如何完美实现方法css实现六种自适应两栏布局方式使用flex布局轻松实现页面布局的示例代码使用Flex布局实现头部固定内容区域滚动的方法详解flex布局下图片变形的解决方法详解flex布局与position:absolute/fixed的冲突问题Flex布局实现div内部子元素垂直居中的示例
