【笔记】1、初学python3网络爬虫——环境配置

版权声明:By BenkoZhao https://blog.csdn.net/u011419402/article/details/78142903

python3网络爬虫——环境配置

学习指引:视频教程《python3网络爬虫实战》

为了避免学习后短时间内遗忘,让自己随时可以查阅前方自己学过的知识,特意注册csdn博客,方便自己学习时做笔记,也方便随时回顾。也希望自己的学习过程能给同样初学python爬虫的你带来一点指引!由于自己是新手,只有一点点的python基础,所以笔记中难免会有很多纰漏,还望各路大神多多包涵,多多指教,如有不正确的地方,欢迎指出。

目前找到的非常棒的学习python的网站:
廖雪峰的官方网站:https://www.liaoxuefeng.com/

配置:

  • VMware虚拟机
    操作系统:Windows 8.1 x64
    内存:4GB
    处理器:Intel I7-4720HQ

第一步:安装python

我尝试学习的python版本是python 3.6.1
官方下载链接:https://www.python.org/downloads/
在网站中选择适合自己操作系统的python程序下载安装便可,具体教程可以参考:廖雪峰的官方网站——安装Python
安装完毕后,我们打开命令行:开始——运行——cmd,在命令行中输入python,回车后会显示python版本和进入python命令行环境。

配置环境变量的方法(有时候在cmd中输入python没反应,是因为python没有添加到默认的环境变量中去,所以我们要添加环境变量。不过如果没有添加python进入环境变量里的话,我们可以使用命令行直接打开python.exe所在的目录,再输入python便可正常打开):右键我的电脑——系统——高级系统设置——高级——环境变量,在环境变量的path属性中,将python.exe所在的目录复制过去,用;隔开,便可以成功添加环境路径!

可以通过where python命令查找python的路径
这里写图片描述

为了能随意打开python2.x和python3.x,可以将python.exe改成想改的名字以示区分。

安装Anaconda

官方下载链接:https://www.anaconda.com/download/
下载安装过程可以参考:http://blog.csdn.net/dq_dm/article/details/47065323
不过我下载的是Python3.6 version的
这里写图片描述

Anaconda是一个用于科学计算的Python发行版,支持 Linux, Mac, Windows系统,提供了包管理与环境管理的功能,可以很方便地解决多版本python并存、切换以及各种第三方包安装问题。Anaconda利用工具/命令conda来进行package和environment的管理,并且已经包含了Python和相关的配套工具

下载安装完成后,我们打开命令行,输入conda,回车后会看到与conda相关的操作指令:
这里写图片描述

输入conda list,回车后我们可以看到安装anaconda时它帮我们安装的库及环境
这里写图片描述
自此,在我们在命令行中输入python,会看到如下字符:
这里写图片描述
我们来尝试一下安装requests库(一个爬虫需要用到的库),现在我们用命令行有两种安装方式:①>>pip install requests ②>>conda install requests
我在之前已经安装过requests库,这里用conda命令尝试再次安装时,它会问我是否升级,选择y便会自动升级,这里可以看出,python库的安装还是比较方便的我在之前已经安装过requests库,这里用conda命令尝试再次安装时,它会问我是否升级,选择y便会自动升级,这里可以看出,python库的安装还是比较方便的。

MongoDB

官方下载链接:https://www.mongodb.com/download-center#community
下载安装过程可以参考:http://www.runoob.com/mongodb/mongodb-window-install.html
这里写图片描述

MongoDB 是一个基于分布式文件存储的数据库。由C++语言编写。旨在为WEB应用提供可扩展的高性能数据存储解决方案。是一个介于关系数据库和非关系数据库之间的产品,是非关系数据库当中功能最丰富,最像关系数据库的。他支持的数据结构非常松散,是类似json的bson格式,因此可以存储比较复杂的数据类型。Mongo最大的特点是他支持的查询语言非常强大,其语法有点类似于面向对象的查询语言,几乎可以实现类似关系数据库单表查询的绝大部分功能,而且还支持对数据建立索引。
来源:百度文库

我们下载MongoDB的作用似乎是说爬虫的时候会遇到一些结构化的字典类型的数据,那么我们在存储的时候就不必关心这些的结构,只需要直接的将这些结构进行动态的查储就好了。既然导师这么说,那我就照着葫芦画瓢,把这个环境安装下来。我把它安装到“C:\Program Files\MongoDB”里面了。
接着,我打开MongoDB目录的server/3.4,在里面创建了‘data’文件夹,并打开该文件夹,在里面再建立‘db’文件夹。这两个文件夹不会自动创建,主要用来存放MongoDB的一些数据,需要我们手动创建。
这里写图片描述

紧接着,我们在打开cmd,将路径定位到bin文件,具体做法有两种:

  • ①打开文件路径,我的路径是在“C:\Program Files\MongoDB\Server\3.4\bin”,然后点击左上角的‘文件’,选择用命令提示符打开(貌似win8以后才有这个选项)win7的话,在bin文件夹下,在空白处,按住shift+右键,会有用命令行窗口打开这个选项,点击它便打开了cmd并且路径定位于此。
  • ②打开cmd,输入cd [bin文件夹的路径]比如我的路径是‘C:\Program Files\MongoDB\Server\3.4\bin’
    这里写图片描述

在上面的基础上,我们输入mongod –dbpath C:\Program Files\MongoDB\Server\3.4\data\db
我发现出现了问题
这里写图片描述
无效的指令,这个问题很明显,我的文件路径Program Files中间有个空格,而命令行是对空格敏感的,所以我尝试输入mongod –dbpath C:\ProgramFiles\MongoDB\Server\3.4\data\db
(把两个单词中间的空格去掉)执行了如下操作:发现效果还是不理想,因为可以看到命令行里发现not found 字样,显然是文件夹找不到,把programfiles中的空格去掉后,路径名已经改变,计算机是找不到的。
这里写图片描述
我尝试将整个MongoDB文件夹剪切粘贴到C盘的根目录下,输入mongod –dbpath C:\MongoDB\Server\3.4\bin
发现这回正确执行了
这里写图片描述
验证一下是否正确执行,我们打开浏览器,我的是chrome,地址栏输入:localhost:27017 回车后显示

It looks like you are trying to access MongoDB over HTTP on the native driver port.

同时命令行有变化,这证明我们的MongoDB成功执行。

在bin下再次打开命令行(原来那个命令行不关闭),输入mongo,发现弹了几行字之后便不动,我再返回原命令行按了一下回车,发现monge命令行有动静了,如下:还可以输入一些命令,比如这里输入db,会有如下反应。
这里写图片描述

为了以后能够方便地启动MongoDB,我们进行如下配置管理员模式打开cmd,进入bin路径,同时,打开data文件夹,新建logs(存放日志文件)文件夹,在logs里面新建mongo.log,复制其路径“‪C:\MongoDB\Server\3.4\data\logs\mongo.log”。
返回命令行窗口,输入

mongod –bind_ip 0.0.0.0 –logpath
‪C:\MongoDB\Server\3.4\data\logs\mongo.log –logappend –dbpath
C:\MongoDB\Server\3.4\data\db –port 27017 –serviceName “MongoDB”
–serviceDisplayName “MongoDB” –install

这里写图片描述
右键‘这台电脑’——管理——服务和应用程序——服务,可以找到MongoDB已经成功的配置完成。右键启动,它便会成功的启动(这个做法主要是为了之后不需要再用命令行打开窗口这么繁琐,直接添加到服务中去)
打开chrome,输入localhost:27017会打开与上面相同的界面。

安装Robomongo

官方下载链接:https://robomongo.org/download
后续安装步骤略

安装Redis数据库

github下载链接:https://github.com/MicrosoftArchive/redis/releases
教程链接:http://www.runoob.com/redis/redis-install.html
安装完后再安装一个RedisDesktopManager 0.8.8版:
https://github.com/uglide/RedisDesktopManager/releases

安装mySQL下载

安装地址:直接百度mySQL,用百度软件中心下载速度会比较快
安装方法:一路点击下一步,有时候没有next,就点击execute,端口是默认端口,继续next,输入自己定义的密码后,下一步,有些check的就点击一下check
安装完成后,查看服务,能看见mySQL的服务。

安装MySQL-Front

安装地址:直接百度下载
安装方法:一路next

python爬虫常用库的安装

urllib、re库是安装python时默认安装的,为了检测是否已经在电脑中,我们可以打开python环境,输入:
>>> import urllib
>>> import urllib.request
>>> urllib.request.urlopen('http://www.baidu.com')
<http.client.HTTPResponse object at 0x000000BF49C10D30>
>>> import re
>>> 

好累啊,明天继续!!!


第二天的分界线

安装requests库

在cmd命令行中,使用pip3命令进行安装pip3时python3.x自带的一个安装库的命令,方便我们快速方便地安装我们所需要的库,它自己会选择最新的版本进行安装,省去我们上网找的精力。输入命令:pip3 install requests,我电脑已经提前安装好了,所以会这么显示
这里写图片描述
如果是初次安装的话,它会读条,最后显示安装成功。
我们来验证一下是否成功安装。
首先进入python环境,在cmd中输入python回车,输入import requests再尝试获得百度的页面,输入requests.get('http://www.baidu.com'),能得到如下界面
这里写图片描述

安装selenium库

帮助文档:http://seleniumhq.github.io/selenium/docs/api/py/
在cmd中输入指令pip3 install selenium,等待读条安装,显示Successfully installed selenium-3.6.0就表明安装完成了。下面进行测试:
进入python环境,输入import selenium结果发现了下面尴尬的一幕
这里写图片描述
模块找不到了?什么原因呢,讲道理安装成功了呀?那我试试用pip命令看看是否成功输入pip install selenium很快等它安装成功,再进入python环境,尝试import selenium,发现import成功了
这里写图片描述
那么回到一开始的问题,pip和pip3的区别是什么呢?我尝试百度了一下,找到一个答案https://zhidao.baidu.com/question/494182519781589612.html

这要看你机子上原来有没有装python2,如果以前有python2,那么pip就是python2的,pip3就是python3的。
如果只有python3,pip和pip3就是一样的。

这就很奇怪了,我的电脑明明只有python3.x,讲道理的话应该pip3没问题才对,结果pip成功了,pip3反而没成功。这其中的细节问题求大佬解答,我找了好久资料也没查出个所以然。进度要紧,这个问题先保留着吧!

接下来继续验证selenium库。继续输入from selenium import webdriver,driver = webdriver.Chrome()发现又出了问题
这里写图片描述
这里的原因是我们缺少一个驱动浏览器的方式,所以我们要安装一个‘chromedriver’,这里贴出一个镜像链接,大家可以尝试一下
http://npm.taobao.org/mirrors/chromedriver/2.28/,我下载的是2.28版本,解压后是一个exe文件,我们把他加入都环境变量中,最简单的方法就是把它加入到python.exe同一个文件夹下,我这里是C:\Users\Benko\AppData\Local\Programs\Python\Python36
这里写图片描述
测试一下,在cmd下输入chromedriver
这里写图片描述成功
我们再试试按刚刚的步骤打开chrome,发现chrome成功打开,如果报错可能是因为chrome的版本过低,解决办法有两种:①升级chrome浏览器 ②下载安装低版本的chromedriver
继续测试,在打开了用命令行打开了chrome后,输入driver.get('http://www.baidu.com'),发现浏览器弹出了百度标签页
这里写图片描述
这波稳了!
我们可以再输入driver.page_source查看网页源代码

下载PhantomJS

我们如果做爬虫的时候,每次都要调用chrome的话,会占用大量的内存还会浪费很多的时间,所以我们可以下载PhantomJS来让我们在命令行中打开网页执行我们想要的操作。
官方下载链接:http://phantomjs.org/download.html
下载完成后,解压得到一个文件夹,我们将文件夹存在随便一个什么地方,进入文件夹里的bin目录,我们能发现里面有一个exe文件,我们将这个路径添加到环境变量,具体步骤上面有说到
这里写图片描述
(添加完环境变量后记得重新启动一下cmd)命令行中输入phantomjs就进入了phantomjs的环境,我们再尝试一下打开python环境,输入截图里的内容(注意http协议不能忘了哦)
这里写图片描述这里就已经将百度搜索页的源代码获取啦!

安装lxml库

可以用于解析网页的一个库
cmd中直接输入:pip3 install lxml便可以成功安装

安装beautifulsoup库

用于解析页面的一个库
cmd中直接输入pip3 install beautifulsoup4
安装完成后,测试一下:
打开python环境,输入from bs4 import BeautifulSoup,若无报错,则安装成功,这里的bs4是一个文件夹的名称,整句话的意思是在bs4这个目录里面,导入BeautifulSoup库到当前程序中来
帮助文档:https://www.crummy.com/software/BeautifulSoup/bs4/doc/

安装pyquery库

也是用于解析网页的一个库,据说比beautifulsoup库还方便
cmd中直接输入:pip3 install pyquery
测试一下:
打开python环境,输入from pyquery import PyQuery as pq这句话中,as pq的意思就是讲PyQuery这个库用pq来代表,因为PyQuery太长了,在代码中会影响效率,如果没有报错,证明安装成功。

帮助文档:http://pythonhosted.org/pyquery/

安装pymysql库

这是python的一个操作存储库的库
cmd命令:pip3 install pymysql
测试:运行python环境,输入import pymysql,若无报错,则证明安装成功。
再输入以下命令测试一下:conn = pymysql.connect(host = 'localhost', user = 'root', password = '这里输入当时安装mySQL时自己设置的密码', port = 3306, db = 'mysql'),继续执行图片中的代码,发现正确返回了数据库中的内容
这里写图片描述

安装pymongo库

这个是操作MongoDB的一个python库
cmd中命令:pip3 install pymongo
安装完成后,验证一下:
进入python环境后,执行图片代码:
这里写图片描述
目前我并不了解其中的意思,只是照着葫芦画瓢。

安装redis库

用于维护分布式爬虫的一个库,非常高效易用
cmd命令:pip3 install redis
安装完成后,验证一下:
进入python环境,import redis,没有报错则证明安装成功,我们执行后续操作。
这里写图片描述

安装flask库

用于代理的存储操作之类的库
cmd命令:pip3 install flask
帮助文档:http://flask.pocoo.org/docs/0.10/
要验证是否成功安装,我们可以跑一跑这一段demo:
http://flask.pocoo.org/docs/0.10/quickstart/#a-minimal-application
代码我复制过来,如下:

 from flask import Flask
app = Flask(__name__)

@app.route('/')
def hello_world():
    return 'Hello World!'

if __name__ == '__main__':
    app.run()

安装django库

这是一个外部服务器框架,这个库提供一个完整的后台的方法
cmd命令:pip3 install django
帮助文档:https://docs.djangoproject.com/en/1.11/
如果安装过程没有报错,那就证明安装完成了

安装jupyter库

cmd命令:pip3 install jupyter
安装方法:https://jupyter.readthedocs.io/en/latest/install.html
帮助文档:https://jupyter.readthedocs.io/en/latest/
安装要一段时间
安装完成后,在cmd输入jupyter notebook,会弹出一个页面
这里写图片描述
点击右上角的新建——python3,便会弹出一个python3的命令行,我们可以在里面在线输入python代码并执行!因此,我们可以将jupyter理解成一个记事本。
这里写图片描述
这里面可以充当一个编辑器,ctrl+enter是执行,还支持markdown语法,非常强大

常用的爬虫库的安装到此结束,装的我自己都快疯了,再接再厉,明天继续。小伙伴们也不要放弃哦。

国庆节快乐!

猜你喜欢

转载自blog.csdn.net/u011419402/article/details/78142903
今日推荐