目录

  • 一、GET和POST
  • 1.1 GET
  • 1.2 POST
  • 二、URL组成部分
  • 2.1 URL:全球统一资源定位符
  • URL例子
  • 三、User-Agent用户代理
  • user-agent
  • 四、refer
  • 五、状态码


一、GET和POST

1.1 GET
  • GET:查询参数都会在URL上展示出来
  • get请求一般是从服务器获取数据,并不会对服务器产生任何影响
  • url中有域名baidu.com,后面还有参数展示
  • 打开开发者工具,查看Network-Headers-(Request Method)请求方式是GET

python 加号 url python中url_python

  • 当输入搜索李飞飞,发现url后面多了很多参数,如:编码方式是utf-8、关键词wd=李飞飞

python 加号 url python中url_数据挖掘_02

1.2 POST
  • POST:查询参数和需要提交数据是隐藏在Form表单里的,不会在URL地址上展示出来
  • 如有道翻译界面,需要翻译的数据不会在url中展示,而是Form表单中展示
  • form表单在开发者工具,Network-Header,下滑到底部可看到form
  • python 加号 url python中url_数据挖掘_03


  • python 加号 url python中url_python 加号 url_04

  • 如登录界面,需要输入账号和密码时,使用post请求,不可能把密码展示在url中,不安全
  • 进入登录页后,点击登录按钮,触发登录接口请求,请求方式是POST,可以发现URL中不会展示手机号、短信验证码、密码对信息
  • python 加号 url python中url_数据挖掘_05

二、URL组成部分

2.1 URL:全球统一资源定位符
URL例子

https://baike.baidu.com/item/%E6%9D%8E%E9%A3%9E%E9%A3%9E/7448630?fr=aladdin

  • https: 协议
  • baike.baidu.com:主机名,可以将主机理解为一台名叫baike.baidu.com的机器,这台机器在baidu.com域名下
  • port端口:80 在baike.baidu.com的后面有个 :80 ,端口大家都公认了,就默认省略了
  • /%E6%9D%8E%E9%A3%9E%E9%A3%9E/7448630?fr=aladdin 在域名和关键词后面的这些参数是具体的访问路径
  • #anchor:锚点,用前端在做页面定位的
  • 注意:在浏览请求一个URL,浏览器会对这个URL进行一个编码。(除英文字母、数字和部分标识其它的,全部使用% 加 十六进制码进行编码)
  • 例如:https://baike.baidu.com/item/%E6%9D%8E%E9%A3%9E%E9%A3%9E/7448630?fr=aladdin
  • 在这个中,%E6%9D%8E%E9%A3%9E%E9%A3%9E 就是 李飞飞。前面是十六进制码表示的关键词李飞飞

三、User-Agent用户代理

  • 作用:记录用户的浏览器、操作系统等,为了让用户更好的获取HTML页面效果
user-agent
  • 例子1: Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/78.0.3904.108 Safari/537.36
  • 电脑操作系统是Windows、64位系统、用的浏览器是Chrome、谷歌浏览器的版本是78.0.3904.108。
  • 例子2: Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_3) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/81.0.4044.129 Safari/537.36
  • 电脑操作系统是Mac 、10.15.3版本系统、用的浏览器是Chrome、谷歌浏览器版本是81.0.4044.129。
  • Mozilla FireFox(火狐的内核Gecko)
  • 浏览器内核,用来对网页源代码解释并渲染页面的。网页的源代码通过渲染引擎(内核)渲染后展示出来就是我们看到的web页面了。
  • 用户代理知道大概意思,并知道在哪里查看即可。
  • 浏览器开发者工具➡️Network➡️Headers➡️Request Headers➡️user agent

四、refer

  • 表明当前这个请求是从哪个URL过来的。一般情况下可以用来做反爬的技术。
  • 可从 浏览器开发者工具➡️Network➡️Headers➡️Request headers➡️refer 中查看到
  • 例子,拉勾网中搜索一个产品经理职位,出来的界面如下图,请求url是
  • 这说明要来到这个界面,必须是经过首页输入关键词产品经理才进的来。如果是用爬虫代码发起的请求具体界面数据,一般会指定界面不会经过首页进来,当指定了一个refer路径后,算是一种反爬机制,可以防范一些简单的爬虫。

五、状态码

  • 200:请求成功
  • python 加号 url python中url_http_06

  • 301: 永久重定向
  • 域名会指向到指定的域名,如下图例子,请求的url是jingdong.com,出来的url地址是jd.com。访问jingdong.com会重定向到jd.com。
  • 302: 临时重定向
  • 如登录页,需要先登录才能达到首页。例子,拉勾网需要进入企业版,需要先登录才能查看,所以在点击进入企业版后临时重定向到登录页,登录成功即到对应界面
  • 403:服务器拒绝请求
  • 404:请求失败(服务器无法根据客户端的请求找到资源(网页))
  • 500:服务器内部请求
Life is short.
Keep Learing.
Don't waste time.
Dive deep into Artificial Intelligenc Learing.
Dive deep into Python Learing.
Dive deep into Machine Learing.
Dive deep into deep Learing.
                          									-Toby