Python爬虫的过程:
(1)获取网页
获取网页的基础技术:request、urllib和selenium(模拟浏览器)
获取网页的进阶技术:多进程多线程抓取、登录抓取、突破IP封禁和服务器抓取
(2)解析网页(提取数据)
基础:re正则表达式、BeautifulSoup和lxml
进阶:解决中文乱码
(3)存储数据
基础:存入txt文件和存入csv文件
进阶:存入MySQL数据库和存入MongoDB数据库
Python基础:
数据类型:
字符串(string),放在单引号(')或双引号(")中,可通过加号连接字符串
数字(Number),整数(int)和浮点数(float),两种类型可互相转换,转换时,在对象数字前用括号添加目标数字的类型即可
列表(list),列表能够包含任意种类的数据类型和任意变量,只要把不同的变量放入方括号中,并用逗号分隔即可。索引从0开始。
字典(Dictionaries),是一种可变容器模型,含有key和value,每个存储的值都对应这一个键值key,key必须唯一,但是值不用。值也可以取任何数据类型。
面向对象编程:
__init__()方法称为类的构造方法,通过self调用被封装的内容。使用函数式编程,只需要写清楚输入和输出变量并执行函数即可;而使用面向对象编程,首先要创建封装对象,然后还要通过对象调用被封装的内容。
如果各个函数之间独立且无共用的数据,就选用函数式编程;如果各个函数之间有一定的关联性,那么选用面向对象编程。
调用被封装的内容时有两种方式:通过对象直接调用和通过self间接调用。
对字典进行排序是不可能的,只有把字典转换成另一种方式才能排序。
对象有两种,即可更改(mutable)与不可更改(immutable)对象。Python中,strings,tuples和numbers是不可更改对象,而list、dict等是可更改对象。