栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Python

爬虫学习笔记

Python 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

爬虫学习笔记

1、爬虫的定义

      网络爬虫,又被称为网页蜘蛛,网络机器人,在FOAF社区中间,更经常的称为网页追逐者,是一种按照一定的规则,自动地抓取万维网信息的程序或者脚本。

2、爬虫的基本原理

      网络爬虫的基本原理,网络爬虫是捜索引擎抓取系统的重要组成部分。爬虫的主要目的是将互联网上的网页下载到本地形成一个或联网内容的镜像备份。这篇博客主要对爬虫以及抓取系统进行一个简单的概述。

3、爬虫的设计思路:

     1)首先确定需要爬取的网页URL地址。

     2) 通过HTTP/HTTP协议来获取对应的HTML页面。

     3) 提取HTML页面里有用的数据:

            a. 如果是需要的数据,就保存起来。

            b. 如果是页面里的其他URL,那就继续执行第二步。

4、了解HTML

      HTML 是用来描述网页的超文本标记语言(Hyper Text Markup Language),HTML 不是一种编程语言,而是一种标记语言 (markup language),标记语言是一套标记标签 (markup tag)。

5、学习使用python爬虫库

      Python 爬虫库,requests是python实现的简单易用的HTTP库,requests是python实现的简单易用的HTTP库,使用起来比urllib简洁很多,因为是第三方库,所以使用前需要cmd安装,找到python安装路径中的scripts的路径:
C:UsersAdministratorAppDataLocalProgramsPythonPython38-32scripts
cmd:cd                                                C:UsersAdministratorAppDataLocalProgramsPythonPython38-32scripts                                 

6、get请求和post请求的区别

      1)get请求无请求体,post有

      2)get请求把数据放到URL地址中

      3)post请求change用于登录注册

      4)post请求携带的数据量比get请求大,多,常用于传输大文本

7、requests模块的学习

     1)使用前:pip  install  requests

     2)发送get,post请求

         response = requests.get(url)  #发送get请求,请求url地址对应的响应

         response = requests.post(url,data={请求体的字典})  #发送post请求

         response.request.url   #发送请求的url地址(字符串)

         response.url          #response响应的url地址(字符串)

         response.request.headers  # 请求头(字典)

         response.headers        #响应头(字典)

      3)response的方法

         ->response.text

         该方式往往会出现乱码,出现乱码使用response.encoding=”utf-8”

         ->response.content.decode()

         把响应的二进制字节流转化为str类型

      4)获取网页源码的方法(通过下面三种方式一定可以获取到)

          ->response.content.decode()

          ->response.content.decode(“gbk”)

          ->response.text

       5)发送header的请求:为了模拟浏览器,获取和浏览器一模一样的内容headers = {“”:””,””:””}  #””里面可以在Response Headers里找

 例如:

get请求:

import requests

url = 'http://www.baidu.com'

headers = {"User-Agent": "Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/60.0.3112.90 Safari/537.36"}

response = requests.get(url, headers=headers)

# print(response)

# 获取网页的html字符串

# response.encoding = 'utf-8'

# print(response.text)

print(response.content.decode())

post请求:

import requests

url = 'https://fanyi.baidu.com/basetrans'

query_string = {'query': '人生苦短,我用python', 'from': 'zh', 'to': 'en'}

headers = {'User-Agent': 'Mozilla/5.0 (iPhone; CPU iPhone OS 9_1 like Mac OS X) AppleWebKit/601.1.46 (KHTML, like Gecko) Version/9.0 Mobile/13B143 Safari/601.1'}

response = requests.post(url, data=query_string, headers=headers)

print(response)

print(response.content.decode())

8、简单的爬取网页数据(爬取东方财富网站数据 )

 # 创建一个workbook 设置编码

# 停止driver

# 创建一个worksheet

# 写入表头

# 保存

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/348572.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号