您的位置:首页 > 财经 > 金融 > 出口跨境电商b2c的自营平台有哪些_b站视频播放量网站_百度小说app_培训体系搭建

出口跨境电商b2c的自营平台有哪些_b站视频播放量网站_百度小说app_培训体系搭建

2025/4/19 10:47:13 来源:https://blog.csdn.net/tzcnancy/article/details/147079249  浏览:    关键词:出口跨境电商b2c的自营平台有哪些_b站视频播放量网站_百度小说app_培训体系搭建
出口跨境电商b2c的自营平台有哪些_b站视频播放量网站_百度小说app_培训体系搭建

Requests库初步尝试

#导入requests库
import requests
#requests.get读取百度网页
r=requests.get('http://www.baidu.com')
#输出读取网页状态
print(r.status_code)
#输出网页源代码
print(r.text)

HTTP 状态码是三位数字,用于表示 HTTP 请求的结果。常见的状态码有:

  • 200:表示请求成功。
  • 404:表示请求的资源不存在。
  • 500:表示服务器内部出错。

所以只有200是成功,其他都是失败!

运行代码看到200成功读取网页,并解读了网页源代码

一、Requests库主要七个方法

 

1、 requests.get('http://www.baidu.com')

这就是刚开始我们获取百度网页的方法,非常常用。

注意这里的网址是要http开头的,如果只有www则会报错

#输出r对象的类型,即requests.models.Response
print(type(r))
#输出HTTP 头部信息
print(r.headers)

2、六个方法之间关系

3、PATCHPUT区别

  假设URL位置有一组数据UserInfo,包括UserID、UserName等20个字段

需求:用户修改了UserName,其他不变

  • 采用PATCH,仅向URL提交UserName的局部更新请求(局部改)
  • 采用PUT,必须将所有20个字段一并提交到URL,未提交字段被删除(整体改)

PATCH的最主要好处:节省网络带宽

二、Response对象的属性

 让我们来解读一下网页的编码方式:

import requests
r=requests.get('https://www.sina.com.cn/')
print(r.status_code)
print(r.text)
#输出网页header中得出的编码方式
print(r.encoding)
#输出网页内容中分析得出的编码方式
print(r.apparent_encoding)

可以看到解析内容看不懂

r.encoding得出新浪的编码方式 ISO-8859-1
r.apparent_encoding分析出新浪推测的编码方式utf-8

在中文网页中只有utf-8才能读出内容

当我们在代码中添加r.encoding = 'utf-8' 才可以解读出网页内容

 

三、Response库可能发生的异常

 

四、★★★爬取网页的通用代码框架

这是一个通用的代码:

import requestsdef getHTMLText(url):try:r=requests.get(url,timeout=30)r.raise_for_status()    #如果状态不是200,引发HTTPError异常r.encoding=r.apparent_encodingreturn r.textexcept:return "产生异常"if __name__=='__main__':url='https://www.sina.com.cn/'print(getHTMLText(url))

运行代码可得

如果在网站中删除http则会报错

 

五、HTTP协议

HTTP是一个基于“请求与响应”模式的、无状态的应用层协议

HTTP协议采用URL作为定位网络资源的标识,URL格式如下:

http://host[:port][path]

  • host: 合法的Internet主机域名或IP地址
  • port: 端口号,缺省端口为80
  • path: 请求资源的路径

URL是通过HTTP协议存取资源的Internet路径,一个URL对应一个数据资源

六、总结

  • r.status_code:200是成功
  • requests.get('http://www.baidu.com')
  • PATCH局部更新   /  PUT全局更新
  • r.encoding得出编码方式
  • r.apparent_encoding推测编码方式
  • 添加r.encoding = 'utf-8' 才可以解读出网页内容
  • 爬虫通用代码框架:

import requests

def getHTMLText(url):
    try:
        r=requests.get(url,timeout=30)
        r.raise_for_status()    #如果状态不是200,引发HTTPError异常
        r.encoding=r.apparent_encoding
        return r.text
    except:
        return "产生异常"

if __name__=='__main__':
    url='https://www.sina.com.cn/'
    print(getHTMLText(url))

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com