本文目录一览:
- 1、scrapy-redis到底需要怎样部署啊?分别应该安装什么软件?
- 2、python爬虫需要什么基础
- 3、python爬虫需要安装哪些库
- 4、从python基础到爬虫的书有什么值得推荐
- 5、python爬虫爬下来的数据怎么导入到MySQL
scrapy-redis到底需要怎样部署啊?分别应该安装什么软件?
酷辣虫 CoLaBug
综合技术
Scrapy-redis分布式爬虫+Docker快速部署
简书 简书 2018-07-28 本文共6495个字,预计阅读需要17分钟。
生成海报
微信扫一扫,分享到朋友圈
Scrapy-redis分布式爬虫+Docker快速部署
0 0
Scrapy-redis分布式爬虫+Docker快速部署
打算爬一个网站的数据,量比较大, url 链接从0开始达到2亿,刚开始用 request 递归写了个爬虫,发现速度低的可怜,不算任何的错误,也只能达到.5秒一个请求,这速度实在不能忍,所以想着用分布式爬虫,所以才有了这篇文章
开发环境+框架、库
开发环境:
macOS High Sierra 10.13
Python3.5
开发工具:
PyCharm
Python库: pymysql 、 scrapy 、 scrapy-redis 、 requests 、 BeautifulSoup4 、 redis-py
运行环境: Centos7.4 Centos6.9 Docker
开始搭建环境
安装 Python3 Windows请自行查找教程安装、Mac用户系统自带了 Py2.6 ,我建议升级到 Python3 ,用 HomeBrew 安装即可
Homebrew安装命令
/usr/bin/ruby -e “$(curl -fsSL )”
然后使用 brew install python 安装 Python3
安装成功后再终端输入 python3 查看是否安装成功,如果输入 python 默认使用本机的 py2 ,当然也可以去配置文件设置个 alias 将 python 设置成启动 py3
image
如图安装成功
然后用
easy_install pip 安装
Python 的包管理工具
pip
注意:有的人用的是 Anaconda 作为 py 环境,我刚开始也是用的 Anaconda ,但是在 install scrapy-redis 的时候发现无法导入,默认源都没有这个库,
python爬虫需要什么基础
网页知识
html,js,css,xpath这些知识,虽然简单,但一定需要了解。 你得知道这些网页是如何构成的,然后才能去分解他们.
HTTP知识
一般爬虫你需要模拟浏览器的操作,才能去获取网页的信息
如果有些网站需要登录,才能获取更多的资料,你得去登录,你得把登录的账号密码进行提交
有些网站登录后需要保存cookie信息才能继续获取更多资料
正则表达式
有了正则表达式才能更好的分割网页信息,获取我们想要的数据,所以正则表达式也是需要了解的.
一些重要的爬虫库
url,url2
beautiul Soup
数据库
爬取到的数据我们得有个地方来保存,可以使用文件,也可以使用数据库,这里我会使用mysql,还有更适合爬虫的MongoDB数据库,以及分布式要用到的redis 数据库
爬虫框架
PySpider和Scrapy 这两个爬虫框架是非常NB的,简单的爬虫可以使用urllib与urllib2以及正则表达式就能完成,但高级的爬虫还得用这两个框架。 这两个框架需要另行安装。后面一起学习.
反爬虫
有时候你的网站数据想禁止别人爬取,可以做一些反爬虫处理操作。 打比方百度上就无法去查找淘宝上的数据,这样就避开了搜索引擎的竞争,淘宝就可以搞自己的一套竞价排名
分布式爬虫
使用多个redis实例来缓存各台主机上爬取的数据。
爬虫要学的东西还是挺多的,想把爬虫玩得666,基本就是这些知识点吧!
python爬虫需要安装哪些库
一、 请求库
1. requests
requests 类库是第三方库,比 Python 自带的 urllib 类库使用方便和
2. selenium
利用它执行浏览器动作,模拟操作。
3. chromedriver
安装chromedriver来驱动chrome。
4. aiohttp
aiohttp是异步请求库,抓取数据时可以提升效率。
二、 解析库
1. lxml
lxml是Python的一个解析库,支持解析HTML和XML,支持XPath的解析方式,而且解析效率非常高。
2. beautifulsoup4
Beautiful Soup可以使用它更方便的从 HTML 文档中提取数据。
3. pyquery
pyquery是一个网页解析库,采用类似jquery的语法来解析HTML文档。
三、 存储库
1. mysql
2. mongodb
3. redis
四、 爬虫框架scrapy
Scrapy 是一套异步处理框架,纯python实现的爬虫框架,用来抓取网页内容以及各种图片
需要先安装scrapy基本依赖库,比如lxml、pyOpenSSL、Twisted
从python基础到爬虫的书有什么值得推荐
《Python3爬虫入门到精通课程视频【附软件与资料】【34课时】–崔庆才》百度网盘资源免费下载
链接:
?pwd=zxcv 提取码:zxcv
Python3爬虫入门到精通课程视频【附软件与资料】【34课时】–崔庆才|章节5: 分布式篇|章节4: 框架篇|章节3: 实战篇|章节2: 基础篇|章节1: 环境配置|Python3爬虫课程资料代码.zip|2018-Python3网络爬虫开发实战-崔庆才.pdf|课时06:Python爬虫常用库的安装.zip|课时05:Python多版本共存配置.zip|课时04:MySQL的安装.zip|课时03:Redis环境配置.zip|课时02:MongoDB环境配置.zip|课时01:Python3+Pip环境配置.zip|课时13:Selenium详解.zip
python爬虫爬下来的数据怎么导入到MySQL
下载mysql.connector库
然后把爬虫爬到的数据通过mysql里面的insert语句查到数据库,当然也可以建表,一般我没用python建表 是先建好再写数据的
import mysql.connector
conn = mysql.connector.connect(
user=’root’,
password=’root’,
host=’127.0.0.1′,
port=’3306′,
database=’test_demo’
)
cursor = conn.cursor()
cursor.execute(“INSERT INTO test_user(`uuid`,`user_name`,`user_level`) VALUES (%s,%s,%s)”,[id, user_name, user_level])
cursor.execute(“INSERT INTO tieba_user_detail(`user_name`,`user_exp`,`user_sex`,`tieba_age`,`tieba_note`,`user_favorites`,`user_fans`) VALUES (%s,%s,%s,%s,%s,%s,%s)”,[user_name,user_exp,user_sex, tieba_age,tieba_note, user_favorites, user_fans])
print(‘************** %s %s 数据保存成功 **************’%(user_rank,user_name))
conn.commit()
cursor.close()
插进入就这样的
原创文章,作者:小蓝,如若转载,请注明出处:https://www.506064.com/n/285387.html