东木月
编程是为了更深刻的了解这个世界,或者作为自己的职业谋生存。 读书是为了让自己的灵魂得到升华,照亮自己的同时也指引他人。旅行见天地,读书明事理,工作合行知。
展开
-
python使用随机请求头爬取数据
python 使用随机请求头反反爬虫原创 2022-06-11 23:55:37 · 318 阅读 · 0 评论 -
python用scrapy模拟用户登录
scrapy模拟登录 注意:模拟登陆时,必须保证settings.py里的COOKIES_ENABLED(Cookies中间件) 处于开启状态 COOKIES_ENABLED = True或# COOKIES_ENABLED = False 策略一:直接POST数据(比如需要登陆的账户信息) 只要是需要提供post数据的,就可以用这种方法。下面示例里post的数据是账户密...原创 2018-08-20 13:18:27 · 5200 阅读 · 3 评论 -
Python爬虫练习(requests模块)
Python爬虫练习(requests模块) 一、使用正则表达式解析页面和提取数据 1、爬取动态数据(js格式) 爬取http://fund.eastmoney.com/fund.html 流程: a.分析页面 用浏览器打开链接,清空已加载的数据,点击下一页,可看到动态数据已被封装成js格式: var db = {...} b.获取url c.获取响应 ...原创 2018-07-07 20:13:00 · 4354 阅读 · 3 评论 -
python爬虫scrapy框架
Scrapy 框架 一、简介 Scrapy是用纯Python实现一个为了爬取网站数据、提取结构性数据而编写的应用框架,用途非常广泛。 框架的力量,用户只需要定制开发几个模块就可以轻松的实现一个爬虫,用来抓取网页内容以及各种图片,非常之方便。 Scrapy 使用了 Twisted(其主要对手是Tornado)多线程异步网络框架来处理网络通讯,可以加快我们的下载速度,不用自己去实现异步框架,...原创 2018-07-13 17:36:39 · 781 阅读 · 0 评论 -
python爬虫使用xpath解析页面和提取数据
XPath解析页面和提取数据 一、简介 XPath即为XML路径语言,它是一种用来确定XML(标准通用标记语言的子集)文档中某部分位置的语言。XPath基于XML的树状结构,有不同类型的节点,包括元素节点,属性节点和文本节点,提供在数据结构树中找寻节点的能力。 二、什么是 XPath? XPath 使用路径表达式在 XML 文档中进行导航 XPath 包含一个标准函数库 XPat...原创 2018-07-07 15:05:40 · 16865 阅读 · 0 评论 -
pytho爬虫使用bs4 解析页面和提取数据
页面解析和数据提取 一般来讲对我们而言,需要抓取的是某个网站或者某个应用的内容,提取有用的价值。内容一般分为两部分,非结构化的数据 和 结构化的数据。 非结构化数据:先有数据,再有结构, 结构化数据:先有结构、再有数据 不同类型的数据,我需要采用不同的方式来处理。 非结构化的数据处理 文本、电话号码、邮箱地址 用:正则表达式 html文件 用:正则表达式 / xpath/...原创 2018-07-06 19:42:10 · 3242 阅读 · 0 评论 -
python使用matplotlib画图,jieba分词、词云、selenuium、图片、音频、视频、文字识别、人脸识别
一、使用matplotlib画图 使用matplotlib画柱形图 import matplotlib from matplotlib import pyplot as plt #数据视图 #配置字体 matplotlib.rcParams["font.sans-serif"] = ["simhei"] # 黑体 matplotlib.rcParams["font.family"] =..原创 2018-07-12 18:44:49 · 1473 阅读 · 0 评论 -
python爬虫爬取策略
爬取策略 在爬虫系统中,待抓取URL队列是很重要的一部分。待抓取URL队列中的URL以什么样的顺序排列也是一个很重要的问题,因为这涉及到先抓取那个页面,后抓取哪个页面。而决定这些URL排列顺序的方法,叫做抓取策略。下面重点介绍几种常见的抓取策略: 一、深度优先遍历策略 深度优先遍历策略是指网络爬虫会从起始页开始,一个链接一个链接跟踪下去,处理完这条线路之后再转入下一个起始页,继续跟踪链接...原创 2018-07-05 20:01:08 · 2246 阅读 · 0 评论 -
python爬虫中的requests模块
Requests: 让 HTTP 服务人类 一、简介 虽然Python的标准库中 urllib 模块已经包含了平常我们使用的大多数功能,但是它的 API 使用起来让人感觉不太好,而 Requests 自称 “HTTP for Humans”,说明使用更简洁方便。 Requests 唯一的一个非转基因的 Python HTTP 库,人类可以安全享用:) Requests 继承了urlli...原创 2018-07-05 15:27:36 · 498 阅读 · 0 评论 -
python爬虫自定义header头部
一、Handler处理器 和 自定义Opener opener是 urllib.OpenerDirector 的实例,我们之前一直都在使用的urlopen,它是一个特殊的opener(也就是模块帮我们构建好的)。 但是基本的urlopen()方法不支持代理、cookie等其他的HTTP/HTTPS高级功能。所以要支持这些功能,可以自定义打开器,流程如下: 1、自定义处理器(hander)...原创 2018-07-04 20:49:35 · 1113 阅读 · 0 评论 -
Python爬虫urllib模块
Python爬虫练习(urllib模块) 1、获取百度首页数据 流程:a.设置请求地址 c.设置请求时间 d.获取响应(对响应进行解码) ''' 获取百度首页 ''' import urllib from urllib import request # urllib.request = urllib2 ''' url, 请求地址 data=None, get请求,当data不为...原创 2018-07-03 20:17:12 · 1201 阅读 · 0 评论 -
Python爬虫之线程池
一、为什么要使用线程池? 对于任务数量不断增加的程序,每有一个任务就生成一个线程,最终会导致线程数量的失控,例如,整站爬虫,假设初始只有一个链接a,那么,这个时候只启动一个线程,运行之后,得到这个链接对应页面上的b,c,d,,,等等新的链接,作为新任务,这个时候,就要为这些新的链接生成新的线程,线程数量暴涨。在之后的运行中,线程数量还会不停的增加,完全无法控制。所以,对于任务数量不端增加的程序,...原创 2018-07-09 19:05:25 · 852 阅读 · 0 评论 -
python爬虫基础知识入门
Python爬虫 大纲: 1、获取响应 urllib(python3)/urllib2-urllib(python2) requests(urllib3) --get/post 2、解析响应 HTML、json re/bs4/xpath(描述性语句) 3、通用动态数据加载 selenium(自动化测试框架) + phantomJS(无界面浏览器)、...原创 2018-07-02 20:01:14 · 491 阅读 · 0 评论 -
Python爬虫练习(多线程,进程,协程抓取网页)
一、多线程抓取网页 流程:a.设置种子url b.获取区域列表 c.循环区域列表 d.创建线程获取页面数据 e、启动线程 import csv import threading import time import requests import lxml from lxml import etree import json # 递归锁 rlock = threading.RLock(...原创 2018-07-08 20:02:02 · 1120 阅读 · 0 评论 -
Python使用协程进行爬虫
1、协程 协程,又称微线程,纤程。英文名Coroutine。 协程是啥 ?? 首先我们得知道协程是啥?协程其实可以认为是比线程更小的执行单元。为啥说他是一个执行单元,因为他自带CPU上下文。这样只要在合适的时机,我们可以把一个协程切换到另一个协程,只要这个过程中保存或恢复 CPU上下文那么程序还是可以运行的。 通俗的理解:在一个线程中的某个函数,可以在任何地方保存当前函数的一些临时变量...原创 2018-07-08 16:21:37 · 2231 阅读 · 0 评论 -
Python使用进程制作爬虫
1、进程 1、进程的概念 什么是进程—>CPU在同一时刻只能处理一个任务,只是因为cpu执行速度很快。 cpu在各个任务之间来回的进行切换。 进程的概念:正在进行的一个过程或者说一个任务,而负责执行任务的则是CPU,进程本身是 一个抽象的概念,即进程就是一个过程、一个任务。 CPU描述的是一个程序的执行过程. 进程之间是如何做到并发的:CPU在各个任务之间来回的进...原创 2018-07-08 15:54:35 · 485 阅读 · 0 评论 -
Python爬虫之多线程
多线程 在介绍Python中的线程之前,先明确一个问题,Python中的多线程是假的多线程! 为什么这么说,我们先明确一个概念,全局解释器锁(GIL) 一、什么是GIL Python代码的执行由Python虚拟机(解释器)来控制,同时只有一个线程在执行。对Python虚拟机的访问由全局解释器锁(GIL)来控制,正是这个锁能保证同时只有一个线程在运行。 二、为什么要用GIL 为了...原创 2018-07-08 15:36:12 · 5143 阅读 · 0 评论