(本科)第11章 网络爬虫入门ppt课件.pptx
《(本科)第11章 网络爬虫入门ppt课件.pptx》由会员分享,可在线阅读,更多相关《(本科)第11章 网络爬虫入门ppt课件.pptx(41页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、课程主讲人:(本科)第11章 网络爬虫入门ppt课件Chap11 Introduction to Web Crawler Department of Computer Science and TechnologyDepartment of University Basic Computer TeachingNanjing UniversityNanjing University用Python获取网络数据 网络数据如何获取(爬取)? 抓取网页,解析网页内容 抓取 urllib内建模块 urllib.request Requests第三方库 Scrapy框架 解析 Beautiful Soup库
2、re模块14API/Web API获取数据3Nanjing University网页抓取4Nanjing University网页抓取的过程5客户机服务器RequestResponseNanjing University11.1.1 Requests库基本使用6Nanjing UniversityRequests库7Requests库是简单、方便和人性化的Python HTTP第三方库Requests官网:http/$ pip install requests(Anaconda中预装)Nanjing UniversityRequests库8 import requests r = reques
3、ts.get(https:/) r.status_code200Sourcerequests.get()请求获取指定URL位置的资源,对应HTTP协议的GET方法,返回一个Response对象Nanjing UniversityRequests库9 r.text:150nn n nnnnnnnnnnn n n var aPageStart = (new Date().getTime(); r.encoding # 根据HTTP头部自动推测UTF-8 r.encoding = gb2312 r.encoding = r.apparent_encodingSourceNanjing Univers
4、ityRequests库r.content # 以字节方式访问Response对象11requests.get(http:/.sample.jpg)with open(data.txtpic.jpg, wb) as f: f.write(r.content)FileNanjing UniversityJSON格式12 JSON格式 JavaScript Object Notation,JS对象标记) 一种轻量级的数据交换格式actor: avatar_url: https:/ display_login: magpte, gravatar_id: , id: 29223112, login:
5、magpte, type: PushEventid:9057040574,type:WatchEvent,actor:id:29223112,login:magpte,public:true,created_at:2019-02-13T03:00:10ZNanjing University*JSON格式转化13 import json PythonData = a:1, b:2, c:3 jsonData = json.dumps(PythonData) jsonDataa: 1, b: 2, c: 3 PythonData = json.loads(jsonData) PythonDataa
6、: 1, b: 2, c: 3 PythonFile = json.load(open(sample.json)SourceNanjing UniversityRequests14 headers = User-Agent: Mozilla/5.0 (Macintosh: Intel Mac OS X 10_14_0) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/71.0.3578.98 Safari/537.36 r = requests.get(url, headers = headers) #定制请求头 payload = key1: va
7、lue1, key2: value2 r = requests.get(http:/httpbin.org/get, params = payload) r = requests.post(url, data = payload)SourceNanjing University11.1.2 Robots 协议15Nanjing UniversityRobots协议Robots协议也称为爬虫协议,全称为爬虫排除协议(The Robots Exclusion Protocol)检查站点根目录下是否存在robots.txt例如:网站允许爬取数据吗? https16网站允许爬取数据吗?Nanjing
8、UniversityRobots协议17User-agent 表示搜索引擎Disallow 禁止抓取的目录Allow 允许抓取的目录Nanjing UniversityRobots协议-豆瓣网18Nanjing University网页数据解析19Nanjing UniversityRequests库网页源代码20豆瓣读书豆瓣读书小王子短评十几岁的时候渴慕着小王子,一天之间可以看四十四次日落。是在多久之后才明白,看四十四次日落的小王子,他有多么难过。 Nanjing University11.2.1Beautiful Soup库21Nanjing University1.Beautiful S
9、oup 基础 Beautiful Soup 一个可以从HTML或XML文件中提取数据的Python第三方库 https:/22Nanjing University1.Beautiful Soup 基础 $ pip install beautifulsoup4 (Anaconda中预装)23lxml: HTML解析器$ pip install lxmlPython内置的HTML解析器BeautifulSoup(markup, html.parser) import requests from bs4 import BeautifulSoup r = requests.get(url) # 需要填
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 本科第11章 网络爬虫入门ppt课件 本科 11 网络 爬虫 入门 ppt 课件
限制150内