现在的位置: 首页 > 搜索技术 > 正文

爬虫是什么?python爬虫难学吗

2020年02月18日 搜索技术 ⁄ 共 886字 ⁄ 字号 评论关闭

  简单来说互联网是由一个个站点和网络设备组成的大网,我们通过浏览器访问站点,站点把HTML、JS、CSS代码返回给浏览器,这些代码经过浏览器解析、渲染,将丰富多彩的网页呈现我们眼前。

  爬虫是什么?

  如果我们把互联网比作一张大的蜘蛛网,数据便是存放于蜘蛛网的各个节点,而爬虫就是一只小蜘蛛,沿着网络抓取自己的猎物(数据)爬虫指的是:向网站发起请求,获取资源后分析并提取有用数据的程序;从技术层面来说就是 通过程序模拟浏览器请求站点的行为,把站点返回的HTML代码/JSON数据/二进制数据(图片、视频) 爬到本地,进而提取自己需要的数据,存放起来使用。

  爬虫的基本流程

  用户获取网络数据的方式:

  方式1:浏览器提交请求--->下载网页代码--->解析成页面。

  方式2:模拟浏览器发送请求(获取网页代码)->提取有用的数据->存放于数据库或文件中。

  爬虫要做的就是方式2;发送请求-获得响应内容-解析内容。

  发起请求

  使用http库向目标站点发起请求,即发送一个Request。

  Request包含:请求头、请求体等。

  Request模块缺陷:不能执行JS 和CSS 代码。

  获取响应内容

  如果服务器能正常响应,则会得到一个Response。

  Response包含:html,json,图片,视频等。

  解析内容

  解析html数据:正则表达式(RE模块),第三方解析库如Beautifulsoup,pyquery等。

  Python中爬虫相关的包很多:urllib、requests、bs4、scrapy、pyspider 等,建议你从requests+Xpath 开始,requests 负责连接网站,返回网页,Xpath 用于解析网页,便于抽取数据。

  如果你用过 BeautifulSoup,会发现 Xpath 要省事不少,一层一层检查元素代码的工作,全都省略了。掌握之后,你会发现爬虫的基本套路都差不多,一般的静态网站根本不在话下,小猪、豆瓣、糗事百科、腾讯新闻等基本上都可以上手了。

  以上就是本文关于python爬虫好学吗的全部内容,希望对大家有所帮助。

抱歉!评论已关闭.