#

request:自动爬取 HTML 页面,自动网络请求提交
robots.txt: 网络爬虫排除标准
beautiful soup:解析 HTML 页面
Re: 正则表达式(用于提取需要的信息)

# request 方法

requests.request (): 构造一个请求支撑以下各方法的基础方法
requests.get (): 获取 HTML 网页的主要方法对应 HTTP 的 get
requests.head (): 获取 HTML 网页头部的信息方法对应 HTTP 的 head
requests.post (): 向 HTML 网页提交 post 请求方法,对应 HTTP 的 post
requests.put (): 向 HTML 提交 put 请求方法,对应 HTTP 的 put

# 对象属性

r.status_code: HTTP 请求返回状态,200 表示成功,404 表示失败
r.txt: HTTP 响应内容的字符串方式,即 url 对应的页面内容
re.encoding: 从 HTTP header 中猜测的响应内容编码形式
r.apparent_encoding: 从内容分析出的响应编码方式(备用编码)
r.content HTTP 响应内容的二进制形式

# handler 处理器的基本使用

  1. 获取 hanlder 的方法
    opener = urllib.request.HttoHandler ()
  2. 获取 opener 对象
    opener = urllib.requst.build_opener (handler)
  3. 调用 open 方法
    response = opener.open (request)

content = response.read().decode('utf-8')
(可以使用代理)

# 解析页面

常用的三个方法

  1. Xpath // 获取网页源码的部分数据
  2. JsonPath //
  3. BeautifulSoup

1.Xapth

表达式描述
nodename选取此节点所有节点
/从根节点选取。
//从匹配选择的当前节点选择文档中的节点,而不考虑它们的位置
.选取当前节点
..选取当前节点的父节点
@选取当前属性

选取未知节点
XPath 通配符可用来选取位置的 XML 元素。

通配符描述
*匹配任何元素节点
@*匹配任何属性节点
node()匹配任何类型的节点
更新于 阅读次数

请我喝[茶]~( ̄▽ ̄)~*

Naraci 微信支付

微信支付

Naraci 支付宝

支付宝

Naraci 贝宝

贝宝