Python爬虫常用库的安装及其环境配置

 更新时间:2018年09月19日 11:29:24   作者:大大焕  
今天小编就为大家分享一篇关于python爬虫常用库的安装及其环境配置的文章,小编觉得内容挺不错的,现在分享给大家,具有很好的参考价值,需要的朋友一起跟随小编来看看吧

Python常用库的安装

urllib、re 这两个库是Python的内置库,直接使用方法import导入即可。

在python中输入如下代码:

import urllib
import urllib.request
response=urllib.request.urlopen("http://www.baidu.com")
print(response)

返回结果为HTTPResponse的对象:

<http.client.HTTPResponse object at 0x000001929C7525F8>

正则表达式模块

import re

该库为python自带的库,直接运行不报错,证明该库正确安装。

requests这个库是请求的库

我们需要使用执行文件pip3来进行安装。文件处于C:\Python36\Scripts下,我们可以先将此路径设为环境变量。在命令行中输入pip3 install requests进行安装。安装完成后进行验证

>>> import requests
>>> requests.get('http://www.baidu.com')
<Response [200]>

selenium实际上是用来浏览器的一个库

做爬虫时可能会碰到使用JS渲染的网页,使用requests来请求时,可能无法正常获取内容,我们使用selenium可以驱动浏览器获得渲染后的页面。也是使用pip3  install selenium安装。进行验证

>>> import selenium
>>> from selenium import webdriver
>>> driver = webdriver.Chrome()
DevTools listening on ws://127.0.0.1:60980/devtools/browser/7c2cf211-1a8e-41ea-8e4a-c97356c98910
>>> driver.get('http://www.baidu.com')

上述命令可以直接打开chrome浏览器,并且打开百度。但是,在这之前我们必须安装一个chromedriver,并且安装googlchrome浏览器,可自行去官网下载。当我们安装完毕后再运行这些测试代码可能依旧会出现一闪而退的情况,那么问题出在,chrome和chromdriver的版本不兼容,可以在官网下载chrome更高的版本,或者chromedriver更低的版本,但是只要都是最高版本就没问题。
如何查看本机的chrome的版本,具体方法如下:

chromedriver的下载地址如下:
http://chromedriver.storage.googleapis.com/index.html
chromedriver解压后放到Python或者其他配置了环境变量的目录下。 

phantomjs是一个无界面浏览器,在后台运行

可在官网自行下载。并且需要将phantomjs.exe  的所在目录设为环境变量。测试代码

>>> from selenium import webdriver
>>> driver = webdriver.PhantomJS()
>>> driver.get('http://www.baidu.com')
>>> driver.page_source
'<!DOCTYPE html><!--STATUS OK--><html><head>\n 

lxml

使用pip3 install lxml安装

beautifulsoup是一个网络解析库,依赖于lxml库

使用pip3安装。必须安装pip3 install beautifulsoup4,因为beautifulsoup已经停止维护了。安装验证

>>> from bs4 import BeautifulSoup
>>> soup = BeautifulSoup('<html></html>','lxml')
>>>

pyquery也是网页解析库

较bs4更加方便,语法和Jquery无异。也是使用pip3 安装

>>> from pyquery import PyQuery as pq #将其重命名
>>> doc = pq('<html></html>')
>>> doc = pq('<html>hello world</html>')
>>> result = doc('html').text()
>>> result
'hello world'

pymysql是一个操作mysql数据库的库

使用pip3 安装

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

pymongo操作数据库MongoDB的库

需要开启MongoDB服务,在计算机管理当中的服务寻找。也是使用pip3安装

>>> import pymongo
>>> client = pymongo.MongoClient('localhost')
>>> db = client['newtestdb']
>>> db['table'].insert({'name':'tom'})
ObjectId('5b868ee4c4d17a0b2466f748')
>>> db['table'].find_one({'name':'tom'})
{'_id': ObjectId('5b868ee4c4d17a0b2466f748'), 'name': 'tom'}
>>> #完成了单条数据的查询

redis一个非关系型数据库,运行效率高

使用pip3 install redis安装

>>> import redis
>>> r = redis.Redis ('localhost',6379)
>>> r.set('name','tom')
True
>>> r.get('name')
b'tom'
>>> #是一个byte型数据类型

flask做代理时可能会用到

详细内容可以在flask官网查看flask文档

使用pip3 安装pip3 install flask

django是一个web服务器框架

提供了一个完整的后台管理,引擎、接口等,可以使用它做一个完整的网站。可在django的官网查看文档。使用pip3 install django安装

jupyter 可以理解为一个记事本

运行网页端,可以进行写代码,调试,运行。在官网可以下载jupyter,也可以用pip3 安装,相关库非常多,安装比较久。安装后可以在命令行直接运行jupyter notebook,因为此文件在scrips目录下。
C:\Users\dell>jupyter notebook
[I 20:32:37.552 NotebookApp] The port 8888 is already in use, trying another port.
[I 20:32:37.703 NotebookApp] Serving notebooks from local directory: C:\Users\dell


可以在选项  new   中建立新python3文件,并且可以编写代码。

默认的文件名为unite,此处将其改为testDemo,使用快捷键ctrl+回车 运行,按键B跳转至新的编辑行。

总结

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,谢谢大家对脚本之家的支持。如果你想了解更多相关内容请查看下面相关链接

相关文章

  • Python识别快递条形码及Tesseract-OCR使用详解

    Python识别快递条形码及Tesseract-OCR使用详解

    这篇文章主要介绍了Python识别快递条形码及Tesseract-OCR使用详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2019-07-07
  • elasticsearch python 查询的两种方法

    elasticsearch python 查询的两种方法

    这篇文章主要介绍了elasticsearch python 查询的两种方法,非常不错,具有一定的参考借鉴价值,需要的朋友可以参考下
    2019-08-08
  • 对Python random模块打乱数组顺序的实例讲解

    对Python random模块打乱数组顺序的实例讲解

    今天小编就为大家分享一篇对Python random模块打乱数组顺序的实例讲解,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2018-11-11
  • python的dict,set,list,tuple应用详解

    python的dict,set,list,tuple应用详解

    这篇文章主要介绍了python的dict,set,list,tuple应用详解,需要的朋友可以参考下
    2014-07-07
  • 在Python中如何传递任意数量的实参的示例代码

    在Python中如何传递任意数量的实参的示例代码

    这篇文章主要介绍了在Python中如何传递任意数量的实参的示例代码,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2019-03-03
  • Python类的详细定义与使用案例(实例讲解)

    Python类的详细定义与使用案例(实例讲解)

    这篇文章主要给大家介绍了关于Python类的详细定义与使用案例的相关资料,在Python中类表示具有相同属性和方法的对象的集合,文中通过代码介绍的非常详细,需要的朋友可以参考下
    2023-10-10
  • Python中NumPy的数组重塑

    Python中NumPy的数组重塑

    这篇文章主要介绍了Python中NumPy的数组重塑,Numpy是Python科学计算库,用于快速处理任意维度的数组,NumPy使用c语言写的,底部解除了GIL,其对数组的操作速度不在受python解释器限制<BR>
    2023-07-07
  • Python爬虫爬验证码实现功能详解

    Python爬虫爬验证码实现功能详解

    这篇文章主要介绍了Python爬虫爬验证码实现功能详解的相关资料,需要的朋友可以参考下
    2016-04-04
  • python数字图像处理之基本形态学滤波

    python数字图像处理之基本形态学滤波

    这篇文章主要为大家介绍了python数字图像处理之基本形态学滤波示例详解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2022-06-06
  • 在python的类中动态添加属性与生成对象

    在python的类中动态添加属性与生成对象

    这篇文章给大家介绍了如何在python的类中动态添加属性和生成对象,文中通过几个方面来进行介绍,对这感兴趣的朋友们可以学习学习。
    2016-09-09

最新评论