爬虫相关配置-基于Anaconda环境,如果是venv请使用pip代替conda
Linux下安装MongoDB
sudo apt-get install mongodb
安装Redis
sudo apt-get install redis-server
修改redis配置文件
sudo vim /etc/redis/redis.conf
1.修改redis登陆密码:
vim下使用/requirepass搜索并d设置为想要的密码即可
重启redis
sudo service redis restart
进入redis客户端
redis-cli -a passwd
安装MySql
sudo apt-get install mysql-server mysql-client
修改MySql配置文件:
cd /etc/mysql/mysql.conf.d/
修改
sudo vim mysqld.cnf
将bind-address = 127.0.0.1注释掉,让外部可以访问,可以远程访问
重启Mysql服务
sudo service mysql restart
爬虫相关库安装-请求库,解析库,存储库,工具库
请求库urllib,requests等
解析库bs4,pyquery等
存储库mongodb, redis, mysql等
linux下常用库安装
conda install selenium beautifulsoup4 pyquery pymysql pymongo redis flask django jupyter
selenium用来驱动浏览器,执行js的渲染,获取渲染之后的页面,也可以进行自动化测试
一般在selenium安装成功之后在终端测试以下
输入python进入:
from selenium import webdriver
driver = webdriver.Chrom()
执行之后会报错其中有一行
selenium.common.exceptions.WebDriverException: Message: 'chromedriver' executable needs to be in PATH. Please see https://sites.google.com/a/chromium.org/chromedriver/home
安装chromdriver:
首先根据chrome版本确定chromdriver版本,下面是近期chrome版本的相应的对照表:
ChromeDriver v2.39 (2018-05-30)----------Supports Chrome v66-68
ChromeDriver v2.38 (2018-04-17)----------Supports Chrome v65-67
ChromeDriver v2.37 (2018-03-16)----------Supports Chrome v64-66
ChromeDriver v2.36 (2018-03-02)----------Supports Chrome v63-65
ChromeDriver v2.35 (2018-01-10)----------Supports Chrome v62-64
下载后需要将解压后的webdriver移动到/usr/bin目录中
sudo mv chromedriver /usr/bin
没有界面的运行模式(无界面浏览器)phantomjs
安装命令:
sudo apt-get install phantomjs
测试:
phantomjs --version
简单使用:
在终端下输入:
phantomjs
进入phantomjs的交互模式下,输入
console.log('hello world')
就会执行javascript打印内容
使用selenium和phantomjs获取网页源代码:
from selenium import webdriver
driver = webdriver.PhantomJS()
driver.get('https://www.baidu.com')
driver.page_source
lxml用来解析xml文件,方便查找定位标签,以及访问标签数据,安装如下:
conda install lxml
beautifulsoup4依赖于lxml,需要先安装lxml
conda install beautifulsoup4
pyquery安装
conda install pyquery
安装pymysql并测试
conda install pymysql
conn = pymysql.connect('localhost', user='root', password='root', port=3306, db='mysql')
cursor = conn.cursor()
cursor.execute('select * from db')
安装pymongo并测试
conda install pymongo
测试
import pymongo
client = pymongo.MongoClient('localhost')
db = client['tableDB']
db['table'].insert({'name':'q'})
de['table'].find_one({'name':'q'})
redis安装以及测试
安装redis
conda install redis
在安装redis之后,在终端下输入python进入解释器脚本界面,输入
import redis
将会显示
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
ModuleNotFoundError: No module named 'redis'
是因为Python默认不支持redis操作,所以需要额外安装redis-py才能使用python来操作redis
conda install redis-py
测试redis
import redis
r = redis.Redis(host='localhost', password='root', port=6379)
r.set('a', 'z')
r.get('a')
Flask安装
conda install flask测试去官网粘贴一个示例演示即可
Django安装-分布式爬虫维护需要使用
conda install django
测试同样
jupyter安装
conda install jupyter
新建会话b
运行ctrl+enter