截图
简介
这是python爬虫ppt,包括了自我介绍,引言,准备知识,网页请求,网页解析,开始采集,如何应对反爬,高级爬虫等内容,欢迎点击下载。
python爬虫ppt是由红软PPT免费下载网推荐的一款课件PPT类型的PowerPoint.
Python爬虫快速入门 中南大学 商学院 自我介绍 2009-2013 哈尔滨工业大学经济管理学院 2015-至今 中南大学商学院 主要研究方向为线上社群及消费者行为, 在学习研究过程中,习得了数据科学相关技术, 如数据采集、数据清理、数据规整、统计分析 熟悉R、python、MongoDB。 目录 一、引言 引言 爬虫能做什么? 微博最近有啥热门话题 淘宝京东上某商品价格变动邮箱通知 女/男神最新动态 谁点赞最活跃 BBS抢沙发 社交网络分析 …. 引言 爬虫能做什么 一句话, 只要浏览器有的, 你都可以抓可以爬 引言 爬虫好学吗? >>>from math import pow >>>YouJoinUs = {‘is’:True} >>>If YouJoinUs[‘is’]: >>> result = pow(1.01,365) >>> print(result) 37.7834 目录 一、引言 爬虫工作原理 HTML标签 访问Python中文社区https://zhuanlan.zhihu.com/zimei 返回HTML文件如下: Python基本知识 基本数据类型(str,list,tuple,set,dict) 循环语句 (for循环) 条件语句 (if else while) 表达式 (如age = 20) 字符串str 字符串:单(双、三)引号及其夹住的字符 >>>String = ‘我叫邓旭东’ >>>String[2:5] 邓旭东 列表list [1, 2, 3, 4, 5] [‘1’, ’2’, ’3’, ’4’, ’5’] [‘a’, ’b’, ’c’, ’d’] [(1,2),(1,2)] … 列表中的元素可以是字符串,数字,元组,字典,集合 下面的写法是不对的[a, b, c] (除非a,b, c是变量) 元组tuple (1,2,3,4) (’1’, ‘2’, ‘3’, ‘4’) (‘a’, ’b’, ’c’, ’d’) 集合set {‘a’, ’b’, ’c’} 集合是不重复的元素组成的一个基本数据类型。 字典dict >>>Dict = {‘name’: ‘邓旭东’, ‘age’: 26, ‘gender’: ‘male’} 在大括号中,数据成对存储,冒号左边是键(key),冒号右边是值(value) >>>Dict[‘age’] 26 for循环 >>>for x in [‘1’, ’2’, ’3’]: >>> print(x) 1 2 3 目录 一、引言 找规律构建url 通过点击翻看同一个目录 下的多个页面,发现规律, 定制url 发现规律定制url 发现规律定制url 构建网址 Base_url = ‘https://movie.douban.com/tag?start={num}’ for page in range(1,94,1): Num = page - 1 url = Base_url.format(num=Num*20) print(url) ‘https://movie.douban.com/tag?start=0’ ‘https://movie.douban.com/tag?start=20’ ‘https://movie.douban.com/tag?start=40’ …… requests库 Requests is an elegant and simple HTTP library for Python, built for human beings. Requests是一个优雅简洁的Python HTTP库,给人类使用。 requests常用方法 最普通的访问 url = ‘http://www.jianshu.com/u/1562c7f164’ r = requests.get(url) 伪装成浏览器的访问 Headers = {‘User-Agent’: ’Mozilla/5.0 (Macintosh; Intel Mac OS X 10_12_3) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/56.0.2924.87 Safari/537.36’} r = requests.get(url,headers = Headers) requests常用方法 使用cookie访问 Cookie = {‘Cookie’: ’UM_distinctid=15ab64ecfd6592-0afad5b368bd69-1d3b6853-13c680-15ab64ecfd7b6; remember_user_token=W1sxMjEzMTM3XSwiJDJhJDEwJHhjYklYOGl2eTQ0Yi54WC5seVh2UWUiLCIxNDg5ODI2OTgwLjg4ODQyODciXQ%3D%3D---ac835770a030c0595b2993289e39c37d82ea27e2; CNZZDATA1258679142=559069578-1488626597-https%253A%252F%252Fwww.baidu.com%252F%7C1489923851’} r = requests.get(url, cookies=cookies) requests常用方法 >>> r.text u‘[{“repository”:{“open_issues”:0,“url”:“https://github.com/... #返回请求的状态 >>>r.status_code #(4开头客户端问题,5开头服务器问题) 200 目录 一、引言 如何解析网页 火狐Firebug/谷歌的开发者工具 BeaufifulSoup/re库 Python基本知识 BeautifulSoup >>>bsObj = BeautifulSoup(html, “html.parser”) 格式化输出 bsObj对象的内容 tag对象 >>>bsObj.title ‘
The Dormouse‘s story
’ ‘Once upon a time there were three little sisters; and their names were’ ‘’ ‘Lacie and’ ‘Tillie’ ‘and they lived at the bottom of a well.
...
’ Tag对象 >>>#AttrsThe Dormouse's story
>>>bsObj.p.attrs {‘class’: ‘title’, ‘name’: ‘dromouse’} >>>bsObj.p. attrs [‘class’] ‘title’ >>>bsObi.p.attrs.get(‘class’) 'title’ NavigableString对象 >>>#获取标签内部的文字 >>>bsObj.p.string The Dormouse's story find /find_all find_all(name , attrs) 得到的所有符合条件的结果,返回的是列表格式 >>>bsObj.findall(‘a’) [, Lacie, Tillie] >>>bsObj.findall(‘a’, {‘href’: ‘http://example.com/elsie’}) [‘’] find(name , attrs) 只返回第一个符合条件的结果,所以soup.find()后面可以直接接.text或者get_text()来获得标签中的文本。 >>>bsObj.findall(‘a’) re库-正则表达式 html = ‘展开