工具准备及爬虫搭建
Scrapy(python写成的爬虫框架)
在前一篇 Scrapy爬虫入门里有写到Scrapy的安装和基本使用,他的特点是每个不同的page都自己定制一个不同的Spider,通过
scrapy crawl spidername -o file -t json
的方法运行爬虫程序并且以json形式保存到目标文件里(当然后面 -o -t 两项可以省略)。而且python代码很少,实现很方便。简单看下python的语法就可以轻松上手。
顺便以Java开发者和python小白用户的角度阐述下我对python语法的总结:
- 句末不带分号
- if,while,for不带大括号
- 变量不用声明,比js声明还简单
- 三个主要数据结果:字典,列表,元组
- 没有好的IDE,全靠自己声明:包的导入要自己声明,异常要自己声明
- 代码短小,给我很强烈的空虚感
MongoDB(带上pymongo和mongo-java-driver)
很早以前就想实践下MongoDB,早早的看过《MongoDB权威指南》,却一直没有机会实战,亏得毕设可以让我有了需求驱动。因为MongoDB以BSON的形式存储对象,所以我觉得蛮适合存储Scrapy的json爬取结果,由pymongo进行交互。爬取到的数据后期会交由solr搭建搜索服务,所以也装上了java的driver看看读取结果。
java-driver的简单操作
pymongo的简单操作
数据尝试
以CSDN博客里的数据练手,爬取CSDN各博客内的博文内容数据。先爬取热门文章页面上的一些博主名字和url:
{
'username' : 'xxx',
'url' : 'http://blog.csdn.net/xxx/article/list/n'
}
然后爬取该博主所有的文章url链接,再爬取每份url链接里的内容,存到MongoDB里:
{
'user' : 'xxx',
'title' : 'xxxxx',
'tag' : ['xx', 'xx', 'xx'],
'content' : 'xxxxxxxxxxxxxxxxxxxxxxxx'
}
总结
有一些技术是由需求驱动才去尝试学习;有一些问题只要具备一定的执行力就能发现。
MongoDB读取性能如何?他的自动分片怎么得以体现?自带的js版mapreduce如何利用?
如何将Scrapy做成一种服务?python语言的各种实践?
今后的数据会设计论文,个人主页,这里的CSDN博客数据只是整条道路的铺垫。不过对整个学习和探索过程我还是充满期待,哈哈。
项目地址:https://github.com/zbf8441372/VerticleSearchEngine
分享到:
相关推荐
│ Python3爬虫课程资料代码 │ ├─章节1: 环境配置 │ 课时01:Python3+Pip环境配置.mp4 │ 课时02:MongoDB环境配置.mp4 │ 课时03:Redis环境配置.mp4 │ 课时04:MySQL的安装.mp4 │ 课时05:Python多版本...
【Python高级开发课程 高级教程】课程列表 01 Python语言开发要点详解.pptx 02 Python数据结构.pptx 03 Python函数和函数式编程.pptx ...09 Python爬虫框架Scrapy实战.pptx 10 Python Web开发框架Django实战.pptx
课程以ubuntu系统开篇进行Ptython...而在应用和项目课程部分则是更加的丰富,从商城项目实战,高级爬虫实战,数据分析基础,机器学习,人脸识别,语音识别,东方财富金融交易云系统等等,非常的适合当下的学习和应用。
Python爬虫常用库的安装 基础篇 爬虫基本原理讲解 Urllib库基本使用 Requests库基本使用 正则表达式基础 BeautifulSoup库详解 PyQuery详解 Selenium详解 实战篇 Requests+正则表达式爬取猫眼电影 分析Ajax请求并...
python爬虫 python爬虫_爬虫项目实战之Scrapy抓手机今日头条App数据并存入MongoDB
【爬虫开发】《Python3网络爬虫开发实战代码》 说明:《Python3网络爬虫开发实战代码》---->mitmtest (Practical code for development of Python 3 web crawler) 【爬虫开发】《Python3网络爬虫开发实战代码》文件...
Python3 爬虫实战Python3 爬虫实战Python3 爬虫实战Python3 爬虫实战Python3 爬虫实战Python3 爬虫实战Python3 爬虫实战Python3 爬虫实战Python3 爬虫实战
网络爬虫 网页爬虫.pptx06 Python操作MySQL数据库.pptx07 Python操作MongoDB数据库.pptx08 Python多线程 多进程开发.pptx09 Python爬虫框架Scrapy实战.pptx10 Python Web开发框架Django实战.pptx
python爬虫教程系列、从0到1学习python爬虫 python爬虫教程系列、从0到1学习python...Mysql,MongoDB数据库的python使用,多线程多进程爬虫的使用,css 爬虫加密逆向破解,JS爬虫逆向,分布式爬虫,爬虫项目实战实例等
【完整课程列表】 Python高级开发课程 高级教程 01 Python语言开发要点详解....Python高级开发课程 高级教程 09 Python爬虫框架Scrapy实战).pptx Python高级开发课程 高级教程 10 Python Web开发框架Django实战.pptx
Python3 Spider Practice —— Python3 爬虫实战练习主要保存个人在爬虫实战中编写的代码,每次实战分析过程均记录在我的博客里。我的博客:、实战专栏:、基础训练: 【requests、lxml、Xpath、CSV】 【requests、...
【Python高级开发课程 高级教程】课程列表 01 Python语言开发要点详解.pptx 02 Python数据结构.pptx 03 Python函数和函数式编程.pptx ...09 Python爬虫框架Scrapy实战.pptx 10 Python Web开发框架Django实战.pptx
网络爬虫 网页爬虫.pptx06 Python操作MySQL数据库.pptx07 Python操作MongoDB数据库.pptx08 Python多线程 多进程开发.pptx09 Python爬虫框架Scrapy实战.pptx10 Python Web开发框架Django实战.pptx
第一章 爬虫和数据。 第二章 Requests 模块。 第三章 正则表达式。 第四章 XPATH 提取数据。 ... 第六章 多线程爬虫实现。...第十四章:Python 爬虫监控,自定义爬虫。 第十五章:项目实战,考核、爬虫流程。 附录
网络爬虫 网页爬虫.pptx06 Python操作MySQL数据库.pptx07 Python操作MongoDB数据库.pptx08 Python多线程 多进程开发.pptx09 Python爬虫框架Scrapy实战.pptx10 Python Web开发框架Django实战.pptx
【Python高级开发课程 高级教程】课程列表 01 Python语言开发要点详解.pptx 02 Python数据结构.pptx 03 Python函数和函数式编程.pptx ...09 Python爬虫框架Scrapy实战.pptx 10 Python Web开发框架Django实战.pptx
关于爬虫数据存储问题,通常可以有三种选择: 文本文件(txt,json)或excel文件(csv,xlsx) 优势:使用方便,不需要第三方支持 劣势:健壮性差,扩展性差 数据库(mysql,mongoDB,redis,oracle…) 优势:良好...
创建爬虫项目douban scrapy startproject douban 设置items.py文件,存储要保存的数据类型和字段名称 # -*- coding: utf-8 -*- import scrapy class DoubanItem(scrapy.Item): title = scrapy.Field() # 内容 ...