# cnblogs.py
from urllib2 import parse
from scrapy import Request
class CnblogsSpider(scrapy.spider):
name = 'cnblogs'
allowed_domains = ['news.cnblogs.com']
start_urls = ['http://news.cnblogs.com/']
# 获取新闻列表页中的新闻url 并交给 scrapy 进行下载后调用相应的解析方法
# 获取下一页的url并交给scrapy进行下载, 下载完成后交给parse继续跟进
def parse(self, response):
post_nodes = response.css('.news_block') # 获取列表页的信息
for post in post_nodes:
image_url = post.css('.entry_summary a img::attr(src)').extract_first() # 略缩图地址
post_url = post.css('.news_entry a::attr(href)').extract_first() # 文章url地址
request_url = parse.urljoin(response.url, post_url
# 用 Request 返回生成器, 用meta来传递参数
# 将request_url返回后的数据交给parse_detail异步处理
yield Request(url=request_url, meta={"front_image_url": image_url}, callback=self.parse_detail)
def parse_detail(self, response):
pass
抓取
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。
推荐阅读更多精彩内容
- 这一篇首先从allitebooks.com里抓取书籍列表的书籍信息和每本书对应的ISBN码。 一、分析需求和网站结...
- 通过上一篇随笔的处理,我们已经拿到了书的书名和ISBN码。(网络爬虫: 从allitebooks.com抓取书籍信...