爬虫知识点总结(1)

399次阅读
没有评论
爬虫知识点总结(1)

1.什么是爬虫?(spider)
爬虫就是请求网站并提取数据的自动化程序,其中请求,提取,自动化是爬虫的关键
2.robots协议:是否允许你爬取某些数据(了解即可)
3.爬虫的步骤:
%1.找出爬取对象的特征和规律
%2.构造特征,返回数据结构
%3.构造方法,写功能函数
4.爬虫提取数据的方法:正则,xpath,bs4(beautifulsoup4)
5.requests模块
%1含义:requests模块是用python语言写成的,基于urllib,但比urllib更加方便,可以节约大量的工作时间,完全满足HTTP的测试需求。
%2.安装:pip install requests
%3.作用:发送网络请求
扩展:request 与requests的区别:
request一般用于获取数据
requests用于发送网络请求
%4.相关用法:
r=requests.get(url)
r=requests.post(url,data={})
post 加密 请求必须要有用户提交的数据
r是响应对象
r.encoding=’xxx’ 设置编码格式
r.encoding=r.apparent_encoding(前者是从HTTP的header中猜测的响应内容的编码格式,后者是从响应内容中分析出的编码格式,相较于前者来说更为准确,是一种备用编码格式)
r.text 返回的是文本格式
r.content 返回的是二进制(爬取的 内容一般是音频,图片等二进制文件)
r.json() 一般用于人脸识别(等价于python中的 json.loads)
r.cookies 返回访问后网站后的cookies
r.status_code 返回访问网站的状态码,200正常,404 错误
%5.参数: headers={}

6.name==”main”此行代码的作用是当他所在的文件被作为一个包调用时,他以下的代码不起作用
7.re 模块
基本用法:. :除了换行符以外所有的

  • :前面的字符可有可无
    ?:非贪婪
    (.*?) 正则获取数据,以分组的形式呈现
    匹配方法:
    re.match()两个方法:groups()和group()
    re.search(匹配规则,要匹配的字符串)
    re.findall(匹配规则,要匹配的字符串)返回结果是列表
    re.compile()
    使用步骤:
    $1.使用re.compile()函数,将正则表达式的字符串形式编译为pattern实例
    $2.使用pattern实例处理文本并获取匹配结果(一个match实例)
    $3.使用match实例获得信息并进行其他操作
    eg:
    Import re
    pattern=re.compile(‘a-zA-Z’)
    reuslt=pattern.findall(‘zda644’)
    print (result)#打印结果:zda
    8.sqlite3
    %1.数据定义语言
    CREATE :创建一个新的表
    CREATE TABLE novel(id INTEGER PRIMARY key autoincrement(字段 存储类型))
    ALERT: 修改数据库中的某个已经存在的数据库对象
    DROP: 删除整个表
    %2.数据操作语言:
    INSERT: 创建一条记录
    UPDATE: 修改记录
    DELETE: 删除记录
    %3.数据库查询语言:
    SELECT: 从一个或多个表中检索某些记录
    %4.存储类:
    NULL: 值是一个空值
    INTEGER:值是一个带符号的整数
    REAL:值是一个浮点数
    TEXT:值是一个文本字符串
    BLOB:值是一个blob数据
    Sqlite的存储类稍微比数据类型更普遍
    %5.NEVER DO
    不允许用占位符去构造sql语句,要用?代替
    %6.where 语句
    用于从指定的一个或者多个表中获取满足需求的数据
    %7.sql中没有正则,匹配的话可以使用like语句
    9.编码与解码:
    首先声明,计算机中存储的信息都是二进制形式的。
    解码:真实字符串———>二进制串
    编码:二进制串————>真实字符串
    10.sys模块下的sys.exc_info()方法:
    此方法是用来处理错误的,主要用在try的except语句下,用来返回具体的报错内容,返回一个包含三个元素的元组
    第一个元素是报错类型
    第二个元素是具体报错
    第二个元素也是一个对象
    具体用法:sys.exc_info()[1].args[1]
    返回具体的报错信息
    第三个是地址
神龙|纯净稳定代理IP免费测试>>>>>>>>天启|企业级代理IP免费测试>>>>>>>>IPIPGO|全球住宅代理IP免费测试

相关文章:

版权声明:Python教程2022-10-24发表,共计1739字。
新手QQ群:570568346,欢迎进群讨论 Python51学习