美文网首页Python蜂采
Python爬虫相关框架集合

Python爬虫相关框架集合

作者: 若小北00 | 来源:发表于2019-02-14 10:51 被阅读53次

前言

最近做了一个python自动登录淘宝爬取数据的脚本,关于这个脚本下篇会做介绍,在这之间涉及到许多框架,也遇到一些问题,所以在此主要做一些总结以备以后查询。

Python安装

各平台安装Python的方法参考: 安装python

Python的入门和语法参考:
Python基础教程
廖雪峰Python教程

Requests库的安装和使用

在Python爬虫开发中最为常用的库就是使用Requests实现HTTP请求,因为Requests实现HTTP请求简单、操作更为人性化。

安装Requests库
pip3 install requests

Requests库主要提供以下七种请求方法

Requests库的7个主要方法.png

具体使用参考如下:
快速上手Requests

Scrapy库的安装和使用

scrapy安装
pip3 install Scrapy

scrapy的具体使用参考中文官网如下:
scrapy快速入门

selenium库的安装和使用

selenium: 是一个用于对web网页进行自动化测试的工具, 可以通过它提供的一些方法自动操作浏览器, 可以完全模拟人的操作

selenium在Python爬虫中的应用:

1 获取动态网页中的数据, 一些动态的数据我们在获取的源码中并没有显示的这一类动态加载数据

2 用于模拟登录, 一些比较复杂的登录过程, 如果不通过selenium中的浏览器驱动完成登录的话, 我们需要分析出来这个登录发起的所有请求之间关联,包括cookie等关键信息(比如知乎登录), 而通过selenium驱动浏览器来完成知乎登录的话, 就不需要考虑一些cookie, 请求和请求之间的关联等信息, 只需要用户名和密码即可登录

selenium的特点
  1. 它是通过驱动浏览器来进行页面登录, 或者是获取页面信息

  2. 通过selenium来爬取网址的时候, 效率比较低, 因为浏览器的打开, 请求, 渲染页面都需要一定的时间, 所以尽量少使用selenium进行网站爬取, 除非是动态网站

  3. selenium提供的一些用于元素定位和查找的API都是纯Python语言实现的, 所以效率上看, 没有lxml中的定位API效率高

  4. selenium是开源免费的, 支持主流的浏览器, IE, FireFox, Chrome, Opera, Safari等

使用方法:

  1. 安装selenium:
pip3 install selenium (第三方库)
  1. 安装Chrome 浏览器驱动, chromedriver
    下载完成后:

windows 下,新建一个命名为chromedriver文件夹,将解压的chromedriver.exe放进文件夹,再配置进path环境变量

Mac、Linux下,把下载好的文件放在 /usr/bin 目录下就可以了。

注意: 浏览器驱动的版本最好要和浏览器的版本相匹配, 否则会出现不能启动浏览器的错误!

安装完成后:

1.引入这个库

from selenium import webdriver

2.创建一个Chrome浏览器对象

browser = webdriver.Chrome()

3.通过浏览器对象browser向某一个url发起请求

browser.get(url)

4.关闭浏览器

browser.quite()

mitmproxy库的安装和使用

mitmproxy是一个支持HHTP/HTTPS协议的抓包程序,类似Fiddler、Charles的功能,只不过世它通过控制台的形式操作。

mitmproxy还有两个关联组件:

mitmdump:它是mitmproxy的命令行接口,利用它我们可以对接Python脚本,用Python实现监听后的处理。

mitmweb: 它是一个Web程序,通过它我们可以清楚观察mimproxy捕获的请求。
mitmproxy的功能:

拦截HTTP和HTTPS请求和响应
保存HTTP会话请进行分析
模拟客户端请求,模拟服务器返回响应
利用反向代理将流量转发给指定的服务器
支持Mac和Linux上的透明代理
利用Python对HTTP请求和响应进行实时处理

安装:

完成mitmproxy的安装,另外还附带安装了mitmdump和mimweb这两个组件
pip3 install mitmproxy

pip3 install mitmproxy

相关文章

  • Python爬虫相关框架集合

    前言 最近做了一个python自动登录淘宝爬取数据的脚本,关于这个脚本下篇会做介绍,在这之间涉及到许多框架,也遇到...

  • 18年学习技术列表

    后端 语言 java 继续夯实基础,注重于多线程,函数式编程,并发集合相关类。 Python scrapy爬虫框架...

  • Scrapy框架学习1

    scrapy爬虫框架结构 爬虫框架 爬虫框架是实现爬虫功能的一个软件结构和功能组件的集合 爬虫框架是一个半成品...

  • Scrapy爬虫框架结构

    Scrapy不是一个函数功能库。而是一个爬虫框架什么是爬虫框架?爬虫框架是实现爬虫功能的一个软件结构和功能组件集合...

  • 【集合框架】

    集合框架(怎么实现、适用场景) hash相关 Java集合框架 Java集合框架综述Java集合框架面试问题集锦 ...

  • GO学习笔记(24) - 爬虫(1) - 入门

    目录 爬虫的法律风险 - robots协议 开源框架: Crawlab 开源框架: colly 爬虫相关知识(待补...

  • Scrapy流程及模块介绍

    参考资料:python网络爬虫开发实战 1.scrapy的优势 Scrapy框架具有高效爬取速率,相关扩展组件多,...

  • 使用Newspaper框架抓取新闻

    Newspaper框架是Python爬虫框架中在GitHub上点赞排名第三的爬虫框架,适合抓取新闻网页。 推荐安装...

  • 7个实用的Python爬虫框架,你喜欢哪一个?

    Python是网络爬虫的首选语言,在爬虫领域有着独特的优势和用途,而且Python还拥有很多爬虫框架,那么你知道哪...

  • ubuntu 16.04 安装 Scrapy

    写爬虫首选Python,Python爬虫框架首选Scrapy。-- 沃滋基 索德 Scrapy官网 在醒目的地方告...

网友评论

    本文标题:Python爬虫相关框架集合

    本文链接:https://www.haomeiwen.com/subject/zyrdsqtx.html