昨天用xpath提取了网页内容,今天用CSS方法重新提取一遍。
随便在伯乐在线找一篇文章,网址:http://blog.jobbole.com/113555/
#通过CSS选择器提取网页的字段
#标题
title = response.css(".entry-header h1::text").extract_first()
#发布日期
create_data = response.css(".entry-meta-hide-on-mobile::text").extract()[0].strip()
#标签
tag_list = response.css(".entry-meta-hide-on-mobile a::text").extract()
tag_list = [element for element in tag_list if not element.strip().endswith("评论")]
tags = ",".join(tag_list)
#点赞数
praise_nums = response.css(".vote-post-up h10::text").extract_first()
#收藏数
fav_nums = response.css("span.btn-bluet-bigger:nth-child(2)::text").extract_first()
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_first()
match_re = re.match(".*?(\d+).*", comment_nums)
if match_re:
comment_nums = match_re.group(1)
#正文
content = response.css("div .entry").extract()[0]
通过debug调试,可以实现。
提取的内容保存为json格式,上一篇博文已经写到。
http://blog.csdn.net/shengshengshiwo/article/details/79248421