Scrapy爬博客园

D:
进入D盘

scrapy startproject cnblogs
创建博客园项目

cd cnblogs
进入项目根目录

scrapy genspider blog www.cnblogs.com
创建爬虫文件

blog.py:

# -*- coding: utf-8 -*-import scrapy

class BlogSpider(scrapy.Spider):    name = ‘blog‘    allowed_domains = [‘www.cnblogs.com‘]    start_urls = [‘http://www.cnblogs.com/‘]

def parse(self, response):        homePage = response.css(‘div.post_item_body‘)        # 提取首页展示的正文,保存至变量homePage

for v in homePage:            # 循环获取每一条里面的标题与作者            titlelnk = v.css(‘.titlelnk::text‘).extract_first()            # 提取标题            lightblue = v.css(‘.lightblue::text‘).extract_first()            # 提取作者

"""            接下来进行写文件操作,每个名人的名言储存在一个txt文档里面            """            fileName = ‘%s-帖子.txt‘ % lightblue            # 定义文件名,如:作者-帖子.txt

with open(fileName, "a+") as f:                # 不同作者的标题保存在不同的txt文档,“a+”以追加的形式                f.write(titlelnk)                f.close()

scrapy crawl blog
运行爬虫

首页展示的20条博客的标题和作者:

原文地址:https://www.cnblogs.com/yjlch1016/p/9266065.html

时间: 2024-10-10 18:31:23

Scrapy爬博客园的相关文章

python+scrapy分析博客园首页4000篇优质博客(图解)

1.侵删 本文数据是获取的博客园首页的4000条数据,为了不对博客园服务器造成压力,所以源码不会公开,在此,敬请博客园官方团队放心. 获取到的数据从2019-7-11到2019-9-12,此数据也不会公开. 由于会涉及到一些博主的数据,所以有博主不愿公开数据,联系我及时删除. 2.先上数据分析结果 写文最多的博主top6 ---->(最勤劳的博主)?(′?`*) 黑白影-->发文54篇 周国通-->发文38篇 宜信技术-->发文30篇 削微寒-->发文28篇 泰斗贤若如--&

Scrapy爬取博客园精华区内容

程序爬取目标 获取博客园精华区文章的标题.标题链接.作者.作者博客主页链接.摘要.发布时间.评论数.阅读数和推荐数,并存储到MongoDB中. 程序环境 已安装scrapy 已安装MongoDB 创建工程 scrapy startproject cnblogs 在命令提示符中执行上述命令后,会建立一个名为cnblogs的文件夹. 创建爬虫文件 cd cnblogs scrapy genspider cn cnblogs.com 执行上述命令后,会在cnblogs\spiders\下新建一个名为c

实用scrapy批量下载自己的博客园文章

首先,在items.py中定义几个字段用来保存网页数据(网址,标题,网页源码) 如下所示: import scrapy class MycnblogsItem(scrapy.Item): # define the fields for your item here like: # name = scrapy.Field() page_title = scrapy.Field() page_url = scrapy.Field() page_html = scrapy.Field() 最重要的是我

webmagic爬取博客园所有文章

最近学习了下webmagic,学webmagic是因为想折腾下爬虫,但是自己学java的,又不想太费功夫,所以webmagic是比较好的选择了. 写了几个demo,源码流程大致看了一遍.想着把博客园的文章列表爬下来吧. 首页显示的就是第一页文章的列表, 但是翻页按钮不是链接,而是动态的地址: 实际请求的地址及参数: 针对这个动态页面的情况,有两种解决方案: 1. webmagic模拟post请求,获取返回页面. 1 public class CnblogsSpider implements Pa

Python+webdriver爬取博客园“我的闪存”并保存到本地

前篇 用webdriver+phantomjs实现无浏览器的自动化过程 本篇 想法与实现 我想要将博客园“我的闪存”部分内容爬取备份到本地文件,用到了WebDriver和Phantomjs的无界面浏览器.对于xpath的获取与校验需要用到firefox浏览器,安装firebug和firepath插件.代码如下: # -*- coding: utf-8 -*- import os,time from selenium import webdriver from selenium.webdriver

Python - 爬取博客园某一目录下的随笔 - 保存为docx

1 #coding:utf-8 2 import requests 3 from bs4 import BeautifulSoup 4 import MySQLdb 5 6 7 def get_html(url): 8 ''' 9 获取页面HTML源码,并返回 10 ''' 11 html = requests.get(url) 12 content = html.text.encode('utf-8') 13 return content 14 15 def get_blog_html_lis

nodejs爬取博客园的博文

其实写这篇文章,我是很忐忑的,因为爬取的内容就是博客园的,万一哪个顽皮的小伙伴拿去干坏事,我岂不成共犯了? 好了,进入主题. 首先,爬虫需要用到的模块有: express ejs superagent (nodejs里一个非常方便的客户端请求代理模块) cheerio (nodejs版的jQuery) 前台布局使用bootstrap 分页插件使用 twbsPagination.js 完整的爬虫代码,在我的github中可以下载.主要的逻辑代码在 router.js 中. 1. 爬取某个栏目第1页

网络爬虫+HtmlAgilityPack+windows服务从博客园爬取20万博文

网络爬虫+HtmlAgilityPack+windows服务从博客园爬取20万博文 1.前言 最新在公司做一个项目,需要一些文章类的数据,当时就想到了用网络爬虫去一些技术性的网站爬一些,当然我经常去的就是博客园,于是就有下面的这篇文章. 2.准备工作 我需要把我从博客园爬取的数据,保存起来,最好的方式当然是保存到数据库中去了,好了我们先建一个数据库,在来一张表,保存我们的数据,其实都很简单的了啊,如下图所示 BlogArticleId博文自增ID,BlogTitle博文标题,BlogUrl博文地

Python爬虫爬取博客园并保存

Python爬虫爬取博客园并保存        爬取博客园指定用户的文章修饰后全部保存到本地 首先定义爬取的模块文件: crawlers_main.py 执行入口 url_manager.py url管理器 download_manager.py 下载模块 parser_manager.py html解析器(解析html需要利用的内容) output_manager.py 输出html网页全部内容文件(包括css,png,js等) crawlers_main.py 执行入口 1 # coding