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

news/2024/7/19 11:11:23 标签: 爬虫, python, 开发工具

Python常用库的安装

  • urllib、re           这两个库是Python的内置库,直接使用方法import导入即可。
  • 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更低的版本,但是只要都是最高版本就没问题。

  • 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       做代理时可能会用到。使用pip3 安装。详细内容可以在flask官网查看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跳转至新的编辑行。

转载于:https://www.cnblogs.com/dadahuan/p/9556706.html


http://www.niftyadmin.cn/n/641166.html

相关文章

Day33 PythonWeb全栈课程课堂内容

文章目录1. Git 软件介绍2. Git 安装3. Git 基础命令4. Git 进阶用法5. Git 的三大区域6. Git 回滚7. Git 分支1. Git 软件介绍 Git 是一个分布式版本控制软件&#xff0c;用来与github进行连接。可以有效、高速地处理从很小到很大的项目版本管理。Git 是Linus Tirvalds 为了帮…

MySQL基操---用户密码与基本查看命令

用户部分MySQL 用户设置如果你需要添加 MySQL 用户&#xff0c;你只需要在 mysql 数据库中的 user 表添加新用户即可。你可以在创建用户时&#xff0c;为用户指定权限&#xff0c;用户权限列表如下&#xff1a;权限列表:ALTER: 修改表和索引。CREATE: 创建数据库和表。DELETE: …

Day30 PythonWeb全栈课程课堂内容

文章目录1. Redis 常用五大数据类型1.1 Redis-Hash1.2 redis-set(不重复的)1.3 redis-Zset2. Python操作Redis2.1 redis安装及连接2.2 字符串相关操作2.3 列表相关操作2.4 集合相关操作2.5 哈希相关操作3. 主从概念3.1主从配置3.2 配置从3.3 数据操作3.4 注意4. Redis 持久化—…

Understanding Java class loading - part 2

1、Oracle博客上的一篇文章&#xff1a; https://blogs.oracle.com/sundararajan/entry/understanding_java_class_loading_part 2、Tomcat热部署实现原理 呵呵&#xff0c;当然不是真正实现&#xff0c;只是讲解一下思路&#xff0c;对于Instrument这块以前我用过字节码&#…

学习 canvas 的 globalCompositeOperation 做出的神奇效果

说明 最早知道 canvas 的 globalCompositeOperation 属性&#xff0c;是在需要实现一个刮刮卡效果的时候&#xff0c;当时也就是网上找到刮刮卡的效果赶紧完成任务就完了&#xff0c;这次又学习一次&#xff0c;希望能加深理解吧。 先来看下 canvas 的 globalCompositeOperatio…

Day34 PythonWeb全栈课程课堂内容

文章目录1. Gitee&#xff08;Github&#xff09;简单使用2. Gitee&#xff08;Github&#xff09;使用1.1 上传代码1.2 新电脑下载代码1.3 公司下载后继续开发1.4 开发完毕&#xff0c;上线1.5 忘记上传到仓库时1.6 注意3. Rebase4. 多人协同开发工作流创建项目&邀请成员成…

分析spring源码第五(三)篇:Spring中Bean的解析、加载、创建 过程总结

2019独角兽企业重金招聘Python工程师标准>>> 一、IOC type1.Xml -- 配置bean2.Annotation -- Compoment3.Class -- Configuration4.Properties,YML -- EnableConfigurationProperties(User.class) ConfigurationProperties(&…

redis+lua实现分布式锁

2019独角兽企业重金招聘Python工程师标准>>> lock脚本:lock.lua -- Set a lock -- 如果获取锁成功&#xff0c;则返回 1 local key KEYS[1] local content KEYS[2] local ttl ARGV[1] local lockSet redis.call(setnx, key, content) if lockSet 1 th…