爬虫复习2

Requests的使用

按住方式:pip3 install requests

1、response的常用方法:

一、get请求

print(response.text) #页面源码
print(response.status_code) # 状态吗
print(response.headers) # 响应头
print(response.request.headers) #获取请求头
print(response.content) #获取页面的二进制数据
* response.encoding = 'utf-8' 可以设置编码类型
* response.encoding 获取当前的编码
* response.json() 内置的JSON解码器,以json形式返回,前提返回的内容确保是json格式的,不然解析出错会抛异常

二、post请求

response = requests.post(url=url, data = data)

	* url:post请求的目标url
	* data:post请求的表单数据

post请求上传文件

from_data = {
    'username':'LXJ',
    'password':'292143060li'
}
url = 'http://127.0.0.1:8001/api/login/'
headers = {
'User-Agent':'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_13_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/76.0.3809.100 Safari/537.36'
}
response = requests.post(url=url,data=from_data,headers=headers)

url = 'https://httpbin.org/post'
files = {'file':open('pages.html','r',encoding='gbk')}
# 读取本地文件
response = requests.post(url=url,files=files,headers=headers)
if response.status_code == 200:
    print('文件上传成功')
    print(response.text)

设置代理(proxies参数)

import requests

url = 'http://college.gaokao.com/schlist/'
# params : 跟的是get请求url地址后?后面拼接的参数
headers = {'User-Agent':'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_13_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/76.0.3809.100 Safari/537.36'}

proxies = {
    'http':'192.168.2.913:8992',
    'http':'192.168.2.913:9923',
}
response = requests.get(url,params=None,headers=headers,proxies=proxies)

XPath选择器

<1>什么是XPath?

  • XPath (XML Path Language) 是一门在 XML 文档中查找信息的语言,可用来在 XML 文档中对元素和属性进行遍历。

<2>XPath最常用的路径表达式:

  • /从根节点选取。
  • //从匹配选择的当前节点选择文档中的节点,而不考虑它们的位置。
  • .选取当前节点。
  • …选取当前节点的父节点。
  • @选取属性。
  • bookstore选取 bookstore 元素的所有子节点。
  • /bookstore选取根元素 bookstore。注释:假如路径起始于正斜杠( / ),则此路径始终代表到某元素的绝对路径!
  • bookstore/book选取属于 bookstore 的子元素的所有 book 元素。
  • //book选取所有 book 子元素,而不管它们在文档中的位置。
  • bookstore//book选择属于 bookstore 元素的后代的所有 book 元素,而不管它们位于 bookstore 之下的什么位置。
  • //@lang选取名为 lang 的所有属性。
  • /bookstore/*选取 bookstore 元素的所有子元素。
  • //*选取文档中的所有元素。html/node()/meta/@*选择html下面任意节点下的meta节点的所有属性
  • //title[@*]选取所有带有属性的 title 元素
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值