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

做的网站里面显示乱码怎么解决方法网站建设拍金手指排名贰贰

做的网站里面显示乱码怎么解决方法,网站建设拍金手指排名贰贰,长春做网站 长春万网,麦包包的网站建设分析文章目录 1.前言2.HTTP请求头的作用3.在不添加headers时4.反爬虫是什么?5.在请求时添加headers 1.前言 本篇文章主要讲解如何使用requests请求时添加headers,为什么要加headers呢?是因为有些接口不添加headers时,请求会失败。 2…

文章目录

  • 1.前言
  • 2.HTTP请求头的作用
  • 3.在不添加headers时
  • 4.反爬虫是什么?
  • 5.在请求时添加headers

1.前言

本篇文章主要讲解如何使用requests请求时添加headers,为什么要加headers呢?是因为有些接口不添加headers时,请求会失败。

2.HTTP请求头的作用

HTTP请求头(Request Headers)是HTTP请求中的一部分,它们携带了客户端发送到服务器的信息。这些信息可以帮助服务器更好地处理客户端的请求。请求头位于HTTP请求的方法行之后,消息体之前。它们提供了关于客户端环境和请求的具体配置的信息,比如用户代理信息、语言偏好设置、认证凭据等。
headers的内容如下(headers里面的键值对可以自定义):
在这里插入图片描述

3.在不添加headers时

接口URL:https://movie.douban.com/j/search_subjects
请求方法:GET
请求参数:
在这里插入图片描述
接口返回数据:
在这里插入图片描述
使用requests发送请求:

import requestsurl = "https://movie.douban.com/j/search_subjects"
params = {"type":"movie","tag": "热门","page_limit": 50,"page_start":0
}
r = requests.get(url=url, params=params)
print(r.status_code)
print(r.json())

运行结果如下:
在这里插入图片描述
这里的得到了HTTP的状态码是418,是因为网站拥有反爬虫机制,先来认识一下什么是反爬虫。

4.反爬虫是什么?

反爬虫(Anti-Web Scraping)是指网站采取的一系列措施和技术手段,旨在阻止或限制自动化程序(如网络爬虫或机器人)对网站内容的抓取。这是因为有些网站不希望自己的内容被未经授权的方式大量复制或使用,以保护自己的版权、数据安全或者用户体验。下面是一些常见的反爬虫策略:

  1. User-Agent检测

    • 网站会检查请求中的User-Agent字段,以识别出那些明显属于自动化工具的请求,并拒绝这些请求。
  2. IP地址封禁

    • 如果某个IP地址在短时间内发送了大量请求,可能会被认定为爬虫并被封禁一段时间。
  3. 验证码(CAPTCHA)

    • 当检测到可疑活动时,网站可能会要求用户通过验证码来证明自己不是机器人。
  4. JavaScript渲染

    • 一些网站使用JavaScript动态加载内容,使得简单的HTTP请求无法获取完整的页面内容。
  5. 请求频率限制(Rate Limiting)

    • 对于API接口,网站可能设置每分钟或每天的最大请求数,超过这个数量就会拒绝服务。
  6. Cookies和Session ID

    • 使用Cookies和Session ID来跟踪用户行为,如果发现异常行为,则可能阻止该用户继续访问。
  7. 伪装内容

    • 向爬虫显示不同的内容或错误信息,以迷惑爬虫。
  8. 加密和混淆

    • 使用加密技术或混淆JavaScript代码,使爬虫难以解析数据。

5.在请求时添加headers

解决上述问题,我们可以模拟浏览器来发送请求
在刚才的headers中有一个User- Agent字段,用来描述客户端软件的身份信息。这个字符串通常包含了客户端浏览器的名称、版本号、支持的操作系统以及其他相关信息。
在这里插入图片描述
定义一个变量来存放User-Agent的值,然后在请求中传参即可
代码如下:

import requestsurl = "https://movie.douban.com/j/search_subjects"
params = {"type":"movie","tag": "热门","page_limit": 50,"page_start":0
}
headers = {"user-agent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/129.0.0.0 Safari/537.36"
}
r = requests.get(url=url, params=params, headers=headers)
print(r.status_code)
print(r.json())

requests中有一个**kwargs
在这里插入图片描述
这里底层是调用的request方法
在request方法中可以看到headers这个参数
在这里插入图片描述
运行结果:
在headers中添加user-agent之后,请求就能正常返回了
在这里插入图片描述

http://www.yayakq.cn/news/468808/

相关文章:

  • 网站是用什么技术做的ppt背景图免费
  • 旅游景区英文网站建设研究营销型网站四大功能
  • 网站设计步骤及注意事项桂林生活网论坛
  • 域名转移 网站访问网站开发和维护
  • 水果配送网站建设手机网站 底部菜单
  • 四个免费h5网站wordpress建立栏目
  • 黃冈建设厅官方网站Wordpress写文章贴代码
  • 网站建设中html 下载58同城西安网站建设
  • 济南比较大的网站制作公司怎么注册网自己的网站
  • 在哪里有人做网站建站之星免费
  • 潍坊网站定制模板建站最新网游网络游戏手游
  • php网站开发总结全国免费发布信息网
  • 关于网站建设的请示报告分类网站发布信息有生意做吗
  • 免费好用的网站wordpress install.php 500
  • 高青网站建设wordpress输出外部文章
  • wordpress网站自动伪原创公司要想做个网站这么弄
  • 做网站jw100自己网站做反链
  • 网站导航字体大小中企动力网站价格
  • 网易企业邮箱服务器设置怎么填龙泉驿网站seo
  • 昆山网站建设方案优化公司网站建设教程搭建浊贝湖南岚鸿给力
  • 电子商务网站建设报告分析自建外贸网站如何推广
  • 园林工建设有限公司网站视频制作平台
  • 高端html5网站建设织梦模板360导航网址
  • 大型门户网站建设需要哪些技术做网站手把手
  • 做五金的有哪些外贸网站吉林市建设工程档案馆网站
  • 做网站都用什么工具王湛简历
  • 湖州高端网站建设房产信息网海南
  • 建设设计网站公司网站建设和电商区别
  • 乌审旗建设局网站微网站内页
  • 某企业网站的设计与实现财务公司网站模板