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

律师事务所网站建设策划方案专业商城网站设计

律师事务所网站建设策划方案,专业商城网站设计,上海公司网站建设多少钱,无限空间网站Python爬虫原理 前言 简单来说互联网是由一个个站点和网络设备组成的大网#xff0c;我们通过浏览器访问站点#xff0c;站点把HTML、JS、CSS代码返回给浏览器#xff0c;这些代码经过浏览器解析、渲染#xff0c;将丰富多彩的网页呈现我们眼前#xff1b; 一、爬虫是什…Python爬虫原理 前言 简单来说互联网是由一个个站点和网络设备组成的大网我们通过浏览器访问站点站点把HTML、JS、CSS代码返回给浏览器这些代码经过浏览器解析、渲染将丰富多彩的网页呈现我们眼前 一、爬虫是什么 如果我们把互联网比作一张大的蜘蛛网数据便是存放于蜘蛛网的各个节点而爬虫就是一只小蜘蛛 沿着网络抓取自己的猎物数据爬虫指的是向网站发起请求获取资源后分析并提取有用数据的程序 从技术层面来说就是 通过程序模拟浏览器请求站点的行为把站点返回的HTML代码/JSON数据/二进制数据图片、视频 爬到本地进而提取自己需要的数据存放起来使用 二、爬虫的基本流程 用户获取网络数据的方式 方式1浏览器提交请求—下载网页代码—解析成页面 方式2模拟浏览器发送请求(获取网页代码)-提取有用的数据-存放于数据库或文件中 爬虫要做的就是方式2 1、发起请求 使用http库向目标站点发起请求即发送一个Request Request包含请求头、请求体等 Request模块缺陷不能执行JS 和CSS 代码 2、获取响应内容 如果服务器能正常响应则会得到一个Response Response包含htmljson图片视频等 3、解析内容 解析html数据正则表达式RE模块第三方解析库如Beautifulsouppyquery等 解析json数据json模块 解析二进制数据:以wb的方式写入文件 4、保存数据 数据库MySQLMongdb、Redis 文件 三、http协议 请求与响应 Request用户将自己的信息通过浏览器socket client发送给服务器socket server Response服务器接收请求分析用户发来的请求信息然后返回数据返回的数据中可能包含其他链接如图片jscss等 ps浏览器在接收Response后会解析其内容来显示给用户而爬虫程序在模拟浏览器发送请求然后接收Response后是要提取其中的有用数据。 四、 request 1、请求方式 常见的请求方式GET / POST 2、请求的URL url全球统一资源定位符用来定义互联网上一个唯一的资源 例如一张图片、一个文件、一段视频都可以用url唯一确定 url编码 https://www.baidu.com/s?wd图片 图片会被编码看示例代码 网页的加载过程是 加载一个网页通常都是先加载document文档 在解析document文档的时候遇到链接则针对超链接发起下载图片的请求 3、请求头 User-agent请求头中如果没有user-agent客户端配置服务端可能将你当做一个非法用户host cookiescookie用来保存登录信息 注意 一般做爬虫都会加上请求头 请求头需要注意的参数 1Referrer访问源至哪里来一些大型网站会通过Referrer 做防盗链策略所有爬虫也要注意模拟 2User-Agent:访问的浏览器要加上否则会被当成爬虫程序 3cookie请求头注意携带 4、请求体 请求体 如果是get方式请求体没有内容 get请求的请求体放在 url后面参数中直接能看到 如果是post方式请求体是format data ps 1、登录窗口文件上传等信息都会被附加到请求体内 2、登录输入错误的用户名密码然后提交就可以看到post正确登录后页面通常会跳转无法捕捉到post五、 响应Response 1、响应状态码 200代表成功 301代表跳转 404文件不存在 403无权限访问 502服务器错误 2、respone header 响应头需要注意的参数 1Set-Cookie:BDSVRTM0; path/可能有多个是来告诉浏览器把cookie保存下来 2Content-Location服务端响应头中包含Location返回浏览器之后浏览器就会重新访问另一个页面 3、preview就是网页源代码 JSO数据 如网页html图片 二进制数据等 六、总结 1、总结爬虫流程 爬取—解析—存储 2、爬虫所需工具 请求库requests,selenium可以驱动浏览器解析渲染CSS和JS但有性能劣势有用没用的网页都会加载 解析库正则beautifulsouppyquery 存储库文件MySQLMongodbRedis 3、爬获校花网 最后送给大家点福利吧 基础版 View Code 函数封装版 View Code 并发版如果一共需要爬30个视频开30个线程去做花的时间就是 其中最慢那份的耗时时间 View Code 涉及知识多线程多进程 计算密集型任务使用多进程因为能Python有GIL多进程可以利用上CPU多核优势 IO密集型任务使用多线程做IO切换节省任务执行时间并发 线程池 参考博客 瞎驴http://www.cnblogs.com/linhaifeng/articles/7773496.html
http://www.w-s-a.com/news/331515/

相关文章:

  • 建设网站的公司管理公司网站设计
  • 手机网站有什么区别是什么意思不让网站开发公司进入后台
  • 网站正在建设中_敬请期待做宠物店网站
  • 个体营业执照可以做网站服务吗宣传品牌网站建设
  • 做平台是做网站和微信小程序的好别邯郸捕风科技有限公司
  • 公司做哪个网站比较好巴顿品牌设计官网
  • 济宁北湖建设局网站我要推广
  • mc网站的建设大型网站开发
  • 给网站做推广一般花多少钱全国最大的外发加工网
  • linux 网站301江西seo推广方案
  • c2c电子商务网站定制开发wordpress html单页
  • 查询网站空间商自己做的网站如何放到微信
  • 现在网站开发哪个语言好月嫂公司网站建设构思
  • 腾讯云免费网站建设网站设计一级网页
  • 网站备案系统验证码出错的解决方案wordpress+论坛+注册
  • 代做毕设的网站先做网站先备案
  • 网站定制哪个好wordpress主题dux1.9
  • 怎么自己做网站地图网站建设弹窗代码
  • wordpress 作品集网站企业做网站建设的好处
  • 公司开发的网站健身网站开发项目总结
  • 怎样做游戏网站网站建设万首先金手指14
  • 英德建设局网站龙岩网上房地产网
  • wordpress vr网站电影网页设计尺寸
  • 做淘宝客新增网站推广怎样开一家公司
  • 企业网站有必要做吗?网站平均停留时间
  • 蘑菇街的网站建设凡科网站建设网页怎么建
  • 中国光大国际建设工程公司网站论坛是做网站还是app好
  • 地产集团网站建设高德是外国公司吗?
  • 天津市网站建站制作网站建设新报价图片欣赏
  • 怎么样在百度搜到自己的网站高端房产网站建设