归档: 2018/7

0

10-pyspider-frame-use

pyspider的基本使用以爬取 去哪儿网 所有攻略的作者、标题、出发日期、人均费用、攻略正文、背景图片及呆了几天等信息。 1.cmd 运行 pyspider all 运行界面 调试页面 代码: 123456789101112131415161718192021222324252627282930313233343536373839#!/usr/bin/env python# -

0

8-simulated-login

8. 模拟登录Cookies池的搭建 配置文件: 1234567891011121314151617181920212223242526272829303132333435363738394041# 数据库地址REDIS_HOST = 'localhost'#Redis端口REDIS_PORT = 6379#Redis密码,无则填NoneREDIS_PASSWORD = None#生成器使用的

0

7-proxy-use

7. 代理的使用代理的设置、代理池的维护、付费代理的使用、ADSL拨号代理等。这里以 使用代理爬取微信公共号文章为例: config.py 12345678910111213141516171819202122232425REDIS_HOST = 'localhost'REDIS_PORT = 6379REDIS_PASSWORD = '123456'REDIS_KEY = 'weixin'P

0

6-验证码的识别

6. 验证码的识别6.1 图形验证码的识别由于VSCode安装 tesserocr失败,后续再更新… 6.2 点触验证码的识别 自动登录极验验证码后台举例:(获取所有微博四宫格的验证类型,并保存为模板)12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535

0

5-Selenium与Splash的使用

5. Selenium与Splash的使用####5.1 Selenium的使用 查找节点、节点交互操作 12345678910111213141516171819202122232425262728293031323334353637from selenium import webdriverimport osimport timeabspath = os.path.abspath(r"C:

0

4. Ajax数据爬取

4. Ajax数据爬取Ajax爬取某特别测试微博 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364from urllib.parse import urlencodeimport requestsfrom py

0

3. 数据存储

3. 数据存储3.1 文件存储3.1.1 TXT文本存储以爬取知乎–发现–页面-今日最热-部分为例,爬取标题、回答者、答案,并保存到文本中。 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869

0

2. 解析库的使用

2. 解析库的使用2.1 XPath的使用先利用htmls = etree.HTML(root_htmls)或打开一个本地文本文件htmls = etree.parse(‘test.html’, etree.HTMLParser())构建一个XPath对象(htmls), 接着利用其xpath方法获取目标节点、节点属性、节点文本等信息:a. 获取所有节点:htmls.xpath(‘//*’) ;

0

1.学习爬虫的基本库

1.Python爬虫基本库的使用1.1 学习使用urllib库urllib库是Python内置的HTTP请求库之一(还有httplib2、requests、treq等),包含以下4个模块: request: 最基本的HTTP请求模块,用来模拟发送请求; error: 异常处理模块; parse: 一个工具模块,提供许多URL处理方法; robotparser: 主要用来识别网址的robots.t

0

十二、Python杂记

12.Python杂记12.1 用字典dict映射代替switch case语句1234567891011121314151617181920212223""" 用字典映射代替 switch case """def get_apple(): return 'apple'def get_meat(): return 'meat'def get_mice(): return 'mic

0

十一、实战:原生爬虫

11 原生爬虫11.1 爬虫前奏爬虫前奏a.明确目的b.找到数据对应的网页c.分析网页的结构找到数据所在的标签位置d.模拟http请求,向服务器发送这个请求,获取到服务器返回给我们的html(返回的是完整的html数据); 用正则表达式提取我们需要的数据 11.2 爬虫及断点调试a.断点打好,F5运行–F10单步–F5跳断点(从一个断点跳到下一个断点)–F11进入某个对象或函数的内部;b.

0

十、函数式编程:匿名函数、高阶函数、装饰器

10 函数式编程:匿名函数、高阶函数、装饰器10.1 lambda表达式与三元表达式123456789101112# 匿名函数# lambda parameter_list: expression# lambda 参数列表: 表达式f = lambda x,y: x+y#此处的expression只能是简单的B表达式,而不能实现像函数内部的代码块。print(f(1,9)) # 10x = 1y

0

九、Python的高级语法和用法

9 python的高级语法和用法9.1 枚举9.1.1 初识枚举python中所有枚举类型都是enum模块下Enum类的子类, 在使用前,要导入相应的模块和类:1234567891011from enum import Enumclass VIP(Enum): # 枚举中的标识最好全部使用大写 CAT = 1 DOG = 2 ANT = 3# 枚举的意义重在标签而不在于数值

0

八、正则表达式与Json

8 正则表达式与Json8.1 正则表达式正则表达式是一个特殊的字符序列,它能检测一个字符串是否与我们所设定的字符序列相匹配;正则表达式由一系列普通字符和元字符(如’\d’等)组成;它能实现快速检索文本、一些替换文本的操作;正则表达式最重要的是在于规则.12345678910111213141516171819#元字符(概括字符集)r3 = re.findall('\d',ss)r33 = re.