网络爬虫学习(三)

在上一篇中(https://blog.csdn.net/weixin_44526949/article/details/86667777)已经安装了MySQL数据库,以及相关的设置,注意,如果要进行远程访问MySQL数据库时,需要修改配置文件/etc/mysql/mysql.conf.d/mysqld.cnf,将下面的行注释掉即可。

然后再重新启动mysql服务,便可以远程访问了。

接下来,需要安装爬虫常用的一些其他的库,比如请求库requests、selenium,解析库BeautifulSoup、pyquery,以及一些工具库urllib、re等等。

其中urllib和re模块,python3已经内置,而requests库则需要安装,在linux下安装也非常简单,pip3 install requests即可安装,接下来作如下测试。

 

可以看到响应状态码为200,则说明服务器成功接收请求并且已完成整个处理过程,即请求成功。接下来安装selenium模块,selenium库是用来驱动浏览器的一个库,在进行爬虫的过程中,主要用来解决Javascript渲染问题,模拟浏览器进行网页加载,当requests,urllib无法正常获取网页内容的时候。其安装也是非常的简单,在终端输入pip3 install selenium即可完成安装。在进行测试之前,需要安装驱动浏览器相关的包,比如要使用Chrome浏览器需要安装与Chrome浏览器版本相对应的chromedriver(可以参考博客https://blog.csdn.net/yoyocat915/article/details/80580066)确定好之后,可以在这个网站来下载(http://npm.taobao.org/mirrors/chromedriver/),而f类似的firefox浏览器需要安装与firefox浏览器版本相对应的geckodriver。以chrome 浏览器为例,我的chrome浏览器版本为v71,所以我下载的是ChromeDriver v2.45,具体的文件为chromedriver_linux64.zip,使用unzip chromedriver_linux64.zip解压,解压之后,做如下操作:

如此,chromedriver便可安装成功,注意存放路径一定要正确,否则会失败的,另外,如果chromedriver与chrome浏览器版本不对应,可能会出现闪退的情况,python代码执行时会无法看到chrome浏览器出现。安装好之后,通过下面的代码来进行测试。

此时chrome浏览器会出现:

然后,在此基础上,我们来访问百度,

可以看到我们成功访问到了百度,也可以查看百度网页的源代码,使用page_source属性来获取。

但是,在mac os下略有不同,需要将chromedriver驱动放到自己指定的目录中,然后进入到目录/usr/local/bin下,创建一个软连接,来连接到chromedriver。如在/usr/local/bin下使用命令ln -s chromedriver的存储路径 chromedriver,则可正确使用。

接下来安装phantomjs模块,phantomjs库可以通过无界面的方式来运行,相当于一个无界面浏览器,在官网(http://phantomjs.org/download.html)下载压缩包文件。

下载完成后,使用tar -jxvf phantomjs-2.1.1-linux-x86_64.tar.bz2解压缩,然后移动文件sudo mv phantomjs-2.1.1-linux-x86_64 /usr/local/src/phantomjs,然后创建软连接到环境变量中,这样可以直接在终端使用phantomjs命令sudo ln -sf /usr/local/src/phantomjs/bin/phantomjs  /usr/local/bin/phantomjs,在终端输入phantomjs来进行测试即可。在Mac Os下需要配置环境变量,使用命令export PATH=phantomjs存放的绝对路径/bin:$PATH,注意,一定配置的是PhantomJS的bin目录路径,否则会失败的,配置完成好之后,在终端输入:phantomjs,即可看到相应结果。接下来使用phantomjs来达到和selenium一样的效果,而不弹出chrome浏览器,操作如下。

可以看到同样得到了百度网页的源代码,但是没有弹出浏览器。接下来安装lxml模块,这个库提供了xpath解析方式,安装非常简单,使用pip3 install lxml安装即可。进一步来安装beautifulsoup模块,beautifulsoup是一个解析库,其依赖于lxml模块,使用pip3 install beautifulsoup4安装即可。通过下面代码来进行测试。

接下来,介绍下pyquery库,其用法与jquery用法类似。安装pyquery使用pip3 install pyquery即可安装,其用法可以参考pyquery官方文档(https://pythonhosted.org/pyquery/)。接下来安装pymysql模块,这是一个存储库,顾名思义,这是一个操作mysql的库,安装方式为

python3 -m pip install PyMySQL

可以参考官方网站(https://pypi.org/project/PyMySQL/),安装完成后,进行测试来连接mysql数据库。

import pymysql
conn = pymysql.connect(host='localhost', user='root',port=3306,db='mysql',password
    ='your password for mysql')
cursor=conn.cursor()
cursor.execute('select * from mysql.user')

即可看到结果。接下来安装pymongo模块,顾名思义,这是一个操作MongoDB数据库的一个库。使用pip3 install pymongo安装即可。通过下面的代码来进行测试。

import pymongo  
client = pymongo.MongoClient('localhost') 
db = client['test_mongodb'] 
db['table'].insert({"name":"zs"}) 
db['table'].find_one({"name":"zs"})

接下来安装redis模块,之前已经安装了redis数据库,redis模块用于分布式网络爬虫,安装方法比较简单,直接使用pip3 install redis安装即可。接下来安装flask,flask是一个基于python的web应用框架,使用pip3 install flask即可完成安装。关于flask的使用案例,参考官方文档(http://docs.jinkan.org/docs/flask/),接下里,安装django。django是一个基于python的web服务器框架,采用了MVC的框架模式,直接使用pip3 intsall django安装即可。接下来安装jupyter,这是一个web端的科学计算笔记本,是一个非常高效的开发工具,使用pip3 install jupyter安装即可。其使用可以参考官方网站(https://jupyter.org/documentation)。这样与爬虫相关的包和工具就基本安装完成了。

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

CSAIWQYB

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值