网页源代码抓取工具(请求头注意携带4、请求体如果是是get方式)

优采云 发布时间: 2022-04-11 23:03

  网页源代码抓取工具(请求头注意携带4、请求体如果是是get方式)

  请求:用户通过浏览器(socket client)将自己的信息发送到服务器(socket server)

  响应:服务器收到请求,分析用户发送的请求信息,然后返回数据(返回的数据可能收录其他链接,如:图片、js、css等)

  ps:浏览器收到Response后,会解析其内容展示给用户,爬虫模拟浏览器发送请求后提取有用数据,然后接收Response。

  四、 请求

  1、请求方法:

  常见的请求方式:GET / POST

  2、请求的网址

  url 全局统一资源定位器,用于定义互联网上唯一的资源 例如:图片、文件、视频都可以通过url唯一标识

  网址编码

  图片

  图像将被编码(见示例代码)

  一个网页的加载过程是:

  加载网页通常会先加载文档,

  在解析document文档时,如果遇到链接,则对该超链接发起图片下载请求

  3、请求头

  User-agent:如果请求头中没有user-agent客户端配置,服务器可能会将你视为非法用户主机;

  cookies:cookies用于存储登录信息

  注意:一般爬虫会添加请求头

  

  

  

  请求头中需要注意的参数:

  (1)Referrer:访问源从哪里来(有些大的网站,会使用Referrer做防盗链策略;所有爬虫也要注意模拟)

  (2)User-Agent: 访问的浏览器(需添加否则视为爬虫)

  (3)cookie: 请注意请求头

  4、请求正文

  如果请求体在get方法中,则请求体是没有内容的(get请求的请求体放在url后面的参数中,可以直接看到)。如果是在post方法中,请求体为格式dataps:1、登录窗口,文件上传等,信息会附在请求体2、登录,输入错误的用户名和输入密码,然后提交,就可以看到帖子了,正确登录后,页面一般会跳转,帖子无法被抓取

  五、 响应

  1、响应状态码

  200:代表成功

  301:代表跳转

  404: 文件不存在

  403:未经授权的访问

  502:服务器错误

  2、响应头

  响应头中需要注意的参数:

  (1)Set-Cookie:BDSVRTM=0; path=/: 可能不止一个,就是告诉浏览器保存cookie

  (2)Content-Location:服务器响应头收录Location返回浏览器后,浏览器会重新访问另一个页面

  3、预览是网页的源代码

  JSO 数据

  如网页html、图片

  二进制数据等

  1、爬虫流程总结:

  爬取--->解析--->存储

  2、爬虫需要的工具:

  请求库:requests、selenium(可以驱动浏览器解析和渲染CSS和JS,但有性能劣势(会加载有用和无用的网页);)

  解析库:regular、beautifulsoup、pyquery

  存储库:文件、MySQL、Mongodb、Redis

0 个评论

要回复文章请先登录注册


官方客服QQ群

微信人工客服

QQ人工客服


线