Requests20170928

本文介绍了HTTP协议的基本概念及URL格式,并详细讲解了Python中requests库的主要方法及其参数设置,包括get、post等请求方式的使用示例。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

HTTP协议:
URL格式:http://host:port[path]
host:合法的Internet主机域名或IP地址
path:请求资源的路径

URL是通过HTTP协议存取资源的Internet路径。

requests库的主要方法:
1、r = requests.request():构造一个请求,支撑以下各方法的基础方法
2、r = requests.get():获取HTML网页的主要方法
3、r = requests.head():获取HTML网页头部信息的方法
4、r = requests.post():向网页提交post方法,请求向URL位置后加新数据
5、r = requests.put():向网页提交put方法,请求向URL位置后加新数据,覆盖原资源
6、r = requests.patch():向网页提交局部修改请求
7、r = requests.delete():向网页提交删除请求

参数:
requests.request(method, url, **kwargs):
**kwargs:控制访问参数(13个),可选
1、params:字典,作为参数增加到url中
这里写图片描述
2、data:字典或文件对象,作为request的内容,不放在URL链接中
这里写图片描述
3、**json:**JSON格式数据,作为request内容
这里写图片描述
4、headers:HTTP定制头,字典(可模拟浏览器)
这里写图片描述
5、files:字典类型,传输文件,作为request内容
这里写图片描述
6、timeout:设定访问时间,单位秒

例1:爬取京东商品信息

import requests
url='http://...'
try:
    kv = {'user-agent':'Mozilla/5.0')
    r = requests.get(url,headers=kv)  #更换头部,模拟浏览器发起请求
    r.raise_for_status()  #如果返回状态码为200,不产生异常;否则产生异常
    r.encoding=r.apparent_encoding
    print(r.text[:1000])  #取前1000个字符的信息
except:
    print("失败")

例2:百度搜索关键词提交
#百度关键词搜索接口:http://baidu.com/s?wd=keyword

import requests
keyword = "python"
try:
    kv = {'wd':keyword}
    r = requests.get("http://baidu.com/s",params=kv)
    print(r.request.url)
    r.raise_for_status()
except:
    print("失败")

例3:图片

import requests
import os
url = "http://..."
root = "D://pics//"
path = root + url.split('/')[-1]  #存储文件路径,用URL中的部分作为图片名
try:
    if not os.path.exists(root): #判断根目录是否存在,如果不存在创建一个
        os.mkdir(root)
    if not os.path.exists(path):  #判断文件是否存在,如果不存在执行以下代码
        r = requests.get(url)
        with open(path, 'wb') as f:
            f.write(r.content) #将文件用二进制形式存储
            f.close()
            print("保存成功")
    else:
        print("文件已存在")
except:
    print("爬取失败")


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值