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

设计类平台网站自学网站开发流程

设计类平台网站,自学网站开发流程,给个做的网站吗,邢台视频优化排名Python 爬虫入门#xff08;七#xff09;#xff1a;requests 库的使用「详细介绍」 前言1. 初识 requests1.1 安装 requests 库1.2 发送 GET 请求1.3 发送 POST 请求 2. HTTP 请求详解2.1 请求方法2.2 请求头2.3 请求参数 3. 处理响应3.1 响应内容3.2 响应状态码3.3 响应头… Python 爬虫入门七requests 库的使用「详细介绍」 前言1. 初识 requests1.1 安装 requests 库1.2 发送 GET 请求1.3 发送 POST 请求 2. HTTP 请求详解2.1 请求方法2.2 请求头2.3 请求参数 3. 处理响应3.1 响应内容3.2 响应状态码3.3 响应头 4. 会话保持5. SSL 证书验证6. 使用代理7. 文件上传与下载7.1 文件上传7.2 文件下载 8. 处理复杂的网页9. 实战项目抓取数据9.1 项目需求9.2 项目步骤9.3 示例代码总结 前言 欢迎来到“Python 爬虫入门”系列的第七篇文章。本篇文章将详细介绍如何使用 requests 库进行网络请求包括发送各种类型的 HTTP 请求、处理响应、会话保持、SSL 证书验证、代理设置、文件上传与下载等内容。 在本篇文章的代码示例中我将使用https://jsonplaceholder.typicode.com 网站的数据这是一个提供假数据的免费 REST API 服务的网站。这个服务由 JSON Server 和 LowDB 支持每月提供约30亿次请求。它被称为 “JSONPlaceholder”常用于测试和原型设计。 requests 库是 Python 中最流行的 HTTP 库之一因其简单易用和功能强大而广受欢迎。如果你是一个爬虫开发新手本篇文章将帮助你全面掌握 requests库的用法从而提升你的爬虫开发技能。 1. 初识 requests 1.1 安装 requests 库 首先确保你已经安装了 requests 库。如果没有安装可以使用以下命令安装 pip install requests1.2 发送 GET 请求 我们先从最基本的 GET 请求开始。 import requests# 发送 GET 请求 response requests.get(https://jsonplaceholder.typicode.com/posts) print(response.status_code) # 输出状态码 print(response.json()) # 输出响应内容上面的代码向 https://jsonplaceholder.typicode.com/posts 发送了一个 GET 请求并打印出响应的状态码和内容。 1.3 发送 POST 请求 接下来我们来发送一个 POST 请求。 import requests# 发送 POST 请求 data {title: foo,body: bar,userId: 1 } response requests.post(https://jsonplaceholder.typicode.com/posts, jsondata) print(response.status_code) # 输出状态码 print(response.json()) # 输出响应内容在这个例子中我们向 https://jsonplaceholder.typicode.com/posts 发送了一个 POST 请求并附带了一些数据。 2. HTTP 请求详解 2.1 请求方法 requests 库支持多种 HTTP 请求方法包括 GET、POST、PUT、DELETE、HEAD、OPTIONS 等。 import requests# 发送 PUT 请求 data {id: 1,title: foo,body: bar,userId: 1 } response requests.put(https://jsonplaceholder.typicode.com/posts/1, jsondata) print(response.status_code) # 输出状态码 print(response.json()) # 输出响应内容发送 PUT 请求执行结果如下 import requests# 发送 DELETE 请求 response requests.delete(https://jsonplaceholder.typicode.com/posts/1) print(response.status_code) # 输出状态码发送 DELETE 请求执行结果如下 2.2 请求头 有时候我们需要在请求中添加一些头信息例如 User-Agent、Content-Type 等。 import requests# 添加请求头 headers {User-Agent: Mozilla/5.0,Content-Type: application/json } response requests.get(https://jsonplaceholder.typicode.com/posts, headersheaders) print(response.status_code) # 输出状态码 print(response.json()) # 输出响应内容2.3 请求参数 我们可以通过 URL 参数来传递数据。 import requests# 添加请求参数 params {userId: 1 } response requests.get(https://jsonplaceholder.typicode.com/posts, paramsparams) print(response.status_code) # 输出状态码 print(response.json()) # 输出响应内容执行结果如下 3. 处理响应 3.1 响应内容 响应内容可以是 JSON、文本、二进制数据等。 import requestsresponse requests.get(https://jsonplaceholder.typicode.com/posts/1)# 获取响应内容 print(response.text) # 以字符串形式输出 print(response.json()) # 以 JSON 形式输出 print(response.content) # 以二进制形式输出执行结果如下 3.2 响应状态码 我们可以通过响应对象的 status_code 属性来获取状态码。 3.3 响应头 响应头包含了很多有用的信息例如服务器类型、内容类型等。 import requestsresponse requests.get(https://jsonplaceholder.typicode.com/posts/1) print(response.headers)执行结果如下 4. 会话保持 使用 requests 库的会话对象可以在多个请求之间保持某些参数。 import requests# 创建会话对象 session requests.Session()# 设置会话级别的请求头 session.headers.update({User-Agent: Mozilla/5.0})# 发送请求 response session.get(https://jsonplaceholder.typicode.com/posts) print(response.status_code) print(response.json())5. SSL 证书验证 requests 库默认会验证 SSL 证书。你可以通过 verify 参数来控制这一行为。 import requests# 禁用 SSL 证书验证 response requests.get(https://jsonplaceholder.typicode.com/posts, verifyFalse) print(response.status_code)执行结果如下 6. 使用代理 在爬虫开发中使用代理可以帮助我们隐藏真实的 IP 地址。 import requestsproxies {http: http://10.10.10.10:8000,https: http://10.10.10.10:8000 }response requests.get(https://jsonplaceholder.typicode.com/posts, proxiesproxies) print(response.status_code)7. 文件上传与下载 7.1 文件上传 我们可以使用 requests 库轻松地上传文件。 import requests# 文件上传 files {file: open(example.txt, rb)} response requests.post(https://jsonplaceholder.typicode.com/posts, filesfiles) print(response.status_code) print(response.json())7.2 文件下载 同样地我们也可以下载文件。 import requestsresponse requests.get(https://jsonplaceholder.typicode.com/photos/1, streamTrue) with open(photo.jpg, wb) as file:for chunk in response.iter_content(chunk_size128):file.write(chunk) print(文件下载完成)8. 处理复杂的网页 对于一些复杂的网页我们可能需要处理 JavaScript 动态加载的内容。这时可以结合 requests 和 BeautifulSoup 库来实现。 import requests from bs4 import BeautifulSoupresponse requests.get(https://jsonplaceholder.typicode.com/) soup BeautifulSoup(response.text, html.parser)# 提取标题 titles soup.find_all(title) for title in titles:print(title.text)执行结果如下 9. 实战项目抓取数据 接下来我们将结合前面所学的内容编写一个完整的爬虫项目从网站中抓取数据并保存到 CSV 文件中。 9.1 项目需求 从 https://jsonplaceholder.typicode.com/posts 提取标题和链接。将数据保存到 CSV 文件中。 9.2 项目步骤 发送请求并获取响应。解析响应内容。保存数据到 CSV 文件。 9.3 示例代码 import requests import csvdef fetch(url):response requests.get(url)if response.status_code 200:data []posts response.json()for post in posts:title post[title]link fhttps://jsonplaceholder.typicode.com/posts/{post[id]}data.append([title, link])return dataelse:print(请求失败状态码, response.status_code)return []def save_to_csv(data, filename):with open(filename, w, newline, encodingutf-8) as file:writer csv.writer(file)writer.writerow([Title, Link])writer.writerows(data)if __name__ __main__:url https://jsonplaceholder.typicode.com/postsdata fetch(url)if data:save_to_csv(data, datas.csv)print(数据已保存到 datas.csv)总结 通过本篇文章的学习相信小伙伴们已经掌握了 requests 库的基本用法涵盖了发送各种请求、处理响应、会话保持、SSL 证书验证、代理设置、文件上传与下载等内容。
http://www.hkea.cn/news/14542019/

相关文章:

  • html网站开发需要什么软件django 显示wordpress
  • 自己做的网站能备案电影网站模板html
  • 网站编排番禺网站建设怎样
  • 南京马鞍山网站建设推广普通话的法律依据主要有
  • 俄文网站建设个人微信小程序怎么制作
  • 西夏区建设交通网站企业网络监控
  • 新浦网站制作网站建设做网页的软件叫什么dw
  • 南京一对一网站建设苏州手机网站建设服务
  • wordpress网站源文件太多wordpress 登录发布
  • 装潢网站模板网站漂浮图片代码
  • 石河子网站建设公司金币交易网站开发
  • 网站制作叫什么如何看别人网站用什么做的
  • 北京 建公司网站要多少钱大学科技园网站建设
  • 怎么建设网站是什么wordpress google cdn
  • 网站下方一般放什么原因安徽省交通运输厅
  • 中国建筑网建设通网站微网站怎么建设
  • 青岛网站推广系统做网站开发工资怎样
  • 怎么做祝福的网站贵阳做网站开发科技有限公司
  • 做网站线网站建设公司的未来
  • 网站开发怎样实现上传视频中国建设信息网站
  • 上海网站营销推网站的结构设计
  • 外贸网站做开关行业的哪个好电子网站建设维护
  • 软文300字案例成都网站快速排名优化
  • 网站做网站反向代理违法永康市网站建设
  • 集团企业网站建设方案策划书临沂建网站公司
  • 俱乐部网站 模板因酷西安网站建设公司怎么样
  • 有域名有服务器怎么建站网页升级请记住新域名
  • 北京有哪些网站建设公司好乐陵市
  • 网站网站代理怎么做福建建设工程信息网官网
  • 网站首页收录没了怎么在在慧聪网上做网站推广