当前位置: 首页 > news >正文

建网站工具广州手工外发加工网

建网站工具,广州手工外发加工网,品牌建设的五个阶段,学做衣服网站使用chardet库自动检测requests所获得html文档的编码 使用requests和BeautifulSoup库获取某个页面带来的乱码问题 使用requests配合BeautifulSoup库#xff0c;可以轻松地从网页中提取数据。但是#xff0c;当网页返回的编码格式与Python默认的编码格式不一致时#xff0c…使用chardet库自动检测requests所获得html文档的编码 使用requests和BeautifulSoup库获取某个页面带来的乱码问题 使用requests配合BeautifulSoup库可以轻松地从网页中提取数据。但是当网页返回的编码格式与Python默认的编码格式不一致时就会导致乱码问题。 以如下代码为例它会获取到一段乱码的html import requests from bs4 import BeautifulSoup# 目标 URL url https://finance.sina.com.cn/realstock/company/sh600050/nc.shtml# 发送 HTTP GET 请求 response requests.get(url)# 检查请求是否成功 if response.status_code 200:# 获取网页内容html_content response.text# 使用 BeautifulSoup 解析 HTML 内容soup BeautifulSoup(html_content, html.parser)# 要查找的 IDtarget_id hqDetails# 查找具有特定 ID 的标签element soup.find(idtarget_id)if element:# 获取该标签下的 HTML 内容element_html str(element)print(fID 为 {target_id} 的 HTML 内容:\n{element_html}\n)# 查找该标签下的所有 table 元素tables element.find_all(table)if tables:for i, table in enumerate(tables):print(f第 {i1} 个 table 的 HTML 内容:\n{table}\n)else:print(fID 为 {target_id} 的标签下没有 table 元素)else:print(f未找到 ID 为 {target_id} 的标签) else:print(f请求失败状态码: {response.status_code})我们可以通过通过手工指定代码的方式来解决这个问题例如在response.status_code 200后通过response.encoding utf-8指定代码又或通过soup BeautifulSoup(html_content, html.parser, from_encodingutf-8) 来指定编码。 然而当我们获取的html页面编码不确定的时候有没有更好的办法让编码监测自动执行呢这时候chardet编码监测库是一个很好的帮手。 使用 chardet 库自动检测编码 chardet 是一个用于自动检测字符编码的库可以更准确地检测响应的编码。 安装chardet库 pip install chardet代码应用示例 import requests from bs4 import BeautifulSoup import chardet# 目标 URL url https://finance.sina.com.cn/realstock/company/sh600050/nc.shtml# 发送 HTTP GET 请求 response requests.get(url)# 检查请求是否成功 if response.status_code 200:# 自动检测字符编码detected_encoding chardet.detect(response.content)[encoding]# 设置响应的编码response.encoding detected_encoding# 获取网页内容html_content response.text# 使用 BeautifulSoup 解析 HTML 内容soup BeautifulSoup(html_content, html.parser)# 要查找的 IDtarget_id hqDetails# 查找具有特定 ID 的标签element soup.find(idtarget_id)if element:# 获取该标签下的 HTML 内容element_html str(element)print(fID 为 {target_id} 的 HTML 内容:\n{element_html}\n)# 查找该标签下的所有 table 元素tables element.find_all(table)if tables:for i, table in enumerate(tables):print(f第 {i1} 个 table 的 HTML 内容:\n{table}\n)else:print(fID 为 {target_id} 的标签下没有 table 元素)else:print(f未找到 ID 为 {target_id} 的标签) else:print(f请求失败状态码: {response.status_code})可见通过使用chardet库可以有效实现代码的自动检测。
http://www.w-s-a.com/news/931463/

相关文章:

  • 做网站推广需要什么asp响应式h5网站源码下载
  • 柳州建设网官方网站免费自助建站哪个平台好
  • 论坛网站模板源码下载网站建设与网页设计是什么
  • 跑流量的网站淘宝网站的建设目标是
  • 网站计费系统怎么做九一制作网站
  • 网红营销推广温州seo博客
  • 临沂网站制作定制现在比较流行的软件开发模型
  • 南宁企业建站系统做问卷调查哪个网站好
  • 能打开各种网站的浏览器推荐建设部的网站首页
  • 苏州高端网站建设开发wordpress 删除图片
  • saas网站开发外贸网站设计风格
  • c 手机网站开发湘阴网页定制
  • 阿里云虚拟主机搭建wordpressWordPress优化手机端
  • 湖北长安建设网站衡阳市做网站
  • 灯饰网站建设图片深圳做网站哪家公司好
  • 网站的构造有什么网站做生鲜配送的
  • 怎么在手机上做微电影网站小马厂网站建设
  • 网络广告投放网站中山网
  • 保定网站制作专业网页设计模板html代码运行
  • 中国专利申请网官网杭州seo优化
  • 杭州低价做网站网站系统功能流程图
  • 档案室建设网站名贵中药材初加工平台
  • 怎么做优惠券的网站wordpress加载速度
  • 手机网站 分辨率如何创建网站挣钱
  • 网站建设工作标准做模版网站
  • 免费注册微信网站怎样做天猫网站视频
  • 青海建设厅网站通知wordpress如何改文章id
  • 国外搜索网站建设支付网站备案
  • 合肥建站公司有哪家招聘的拼车平台网站开发
  • 网站 备案 固话北京建站模板企业