25.3.2技术日志

任务概述

  • 当天任务:继续复习9节的爬虫内容
  • 目标与预期:复习完毕,记录知识

具体编码活动

  • 实施过程:继续昨日文件第1节
  • 技术细节:1.网站后加/robots.txt是网站管理员写给爬虫的君子协定;
  • 2.requests.get(“URL”)函数用于模拟浏览器请求网页
  • 3.如果后续的代码逻辑(例如进行登录请求等操作)需要用到这些用户名和密码信息,那就需要保留和使用这个 user 字典
  • 4.HTTP POST 请求通常用于向服务器提交数据,比如登录时提交用户名和密码,或者在表单中提交数据等。提交的数据通过 data 参数(这里是 user 字典)传递。

问题与解决方案

  • 问题描述1405: Method Not Allowed405: Method Not Allowed
  • 解决步骤:浏览器显示的是一个错误页面,405: Method Not Allowed 表示服务器不允许使用你所请求的 HTTP 方法。
  • 用post方法请求一个只支持get方法的接口,就会出现这个错误。
  • 最终方案:检查代码中请求的 HTTP 方法是否符合服务器端接口的要求,调整请求方法(如将post改为get 等)

  • 问题描述2:403
  • Access Denied
  • Access Denied

  • You don't have permission to access "http://example.com/api" on this server.

  • Reference #18.57a33017.1740901584.2c2348e6
  • https://errors.edgesuite.net/18.57a33017.1740901584.2c2348e6

  • 解决步骤:是一段 HTML 代码,展示的是一个 “访问被拒绝” 的页面。错误信息表明你没有权限访问,缺少api权限。
  • 最终方案:前端项目没数据?教你抓取各大网站api_抓取api接口-CSDN博客

  • 问题描述3:%E 等标蓝的内容是 URL 编码后的字符。这通常是因为传输的文本包含非 ASCII 字符,系统自动进行了编码处理。
  • 解决步骤:import urllib.parse
  • encoded_str = "%E4%BD%A0%E5%A5%BD"  # 编码后的字符串
  • decoded_str = urllib.parse.unquote(encoded_str)
  • 但是无法成功导入urllib包
  • 最终方案:卸载并重安装了pylance和python的解释器,重启vscode后不再报错;使用urllib处理网址
  • 新知识
  • 学习来源与心得

项目状态更新

  • 整体进展:1/9
  • 版本变更

心得体会与后续计划

  • 心得感悟:网站手段越来越多,爬虫很不好做。进度一直在前进,落下的太多。

后续计划:把爬虫放一放,先把前端学好,并且跟上学习进度。

你可能感兴趣的:(python)