- VisualStudio2022插件的安装及使用-编程手把手系列文章
- pprof-在现网场景怎么用
- C#实现的下拉多选框,下拉多选树,多级节点
- 【学习笔记】基础数据结构:猫树
想必大家都了解爬虫,也就是爬取网页你所需要的信息 。
相比于网页繁多的爬虫教程,本篇主要将爬虫分为四个部分,以便你清楚,代码的功能以及使用,这四部分分别为 。
1.获取到源代码 。
2.根据网页中的标签特征,获取源代码你所需要的部分 。
3.想一下如何根据页面的逻辑将一系列的网页自动化抓取 。
4.保存数据在xlsx等格式下 。
接下来说一下每一步的操作 。
1.获取源代码 。
现在有很多库来获取,不过现在普遍使用的是requests,我也是用它 导入方式为 import requests 这一部分很简单就一行代码 response = requests.get(url, params = params , headers = headers) url就是页面的url,网址 params就是查询参数,可选 headers就是页面的请求头,也是可选,不过现在可以必过简易的反爬,主要要有user_agent和cookies 。
2.根据网页特征获取 。
这里我用到了BeautifulSoup 导入方式为 from bs4 import BeautifulSoup 具体使用就是 soup = BeautifulSoup(directory, 'html.parser') 其中'html.parser',它是 Python 内置的解析器,用于解析普通的 HTML 文档.
作用为:首先将html 变量中的 HTML 内容解析为一个 BeautifulSoup 对象 soup,使得后续可以利用 BeautifulSoup 提供的方法来方便地遍历和操作 HTML 文档的各个部分.
至于筛选标签,我主要我是使用了BeautifulSoup中的find和find_all两个函数,是用于查找符合指定标签名和属性条件的元素,这两个函数是有一定的区别的。 find用于查找文档中符合指定条件的第一个元素 find_all用于查找文档中符合条件的所有元素,并返回一个列表 举个例子 first_span = soup.find('span', class_='fl') 这里用find方法查找了第一个 标签,且其 class 属性为 'fl'。 span_list = soup.find_all('span', class_='fl') 这里用find_all 方法查找了所有 标签,且其 class 属性为 'fl' 的元素,将它们存储在 span_list 列表中.
3.自动化抓取 这一部分,得具体网页具体分析了 如一些页面的选择上,如?p=s这一些逻辑,将其写入脚本中,以实现自动化 https://www.xxx.html?p=s 。
4.保存数据 这部分用到了openpyxl库 导入方式: from openpyxl import Workbook 首先看一下一下的代码 。
def create_execl(name):
wb = Workbook()
ws = wb.active
ws.title = name
excel_headers = ["疾病信息", "问诊类型", "病例url", "医生url", "医生简介", "医生擅长", "医生服务质量", "医生建议", "医生与患者交流"]
ws.append(excel_headers)
wb.save(name+".xlsx")
def write_back_execl(data, name):
wb = load_workbook(name+".xlsx")
ws = wb.active
ws.append(data)
wb.save(name+".xlsx")
然后我来对大家逐行解析 。
首先函数create_excel(name)是创建一个名为 name的Excel 文件,并写入表头信息。 1.wb = Workbook():创建一个新的 Workbook 对象,即一个新的 Excel 文件。 2.ws = wb.active:获取当前活动的工作表对象,这是一个 Worksheet 对象。 3.ws.title = name:将当前工作表的名称设置为传入的 name 参数。 4.excel_headers:定义了 Excel 表头的字段,包括 "疾病信息"、"问诊类型" 等。 5.ws.append(excel_headers):将表头信息添加到第一行。 6.wb.save(name+".xlsx"):保存 Excel 文件,文件名为 name.xlsx,这里的 name 是函数的参数.
函数write_back_excel(data, name),是用于向已存在的 Excel 文件中写入数据。 1.wb = load_workbook(name+".xlsx"):使用 load_workbook 函数加载已存在的 Excel 文件,文件名为 name.xlsx。 2.ws = wb.active:获取当前活动的工作表对象。 3.ws.append(data):将数据 data 追加到当前工作表的最后一行。 4.wb.save(name+".xlsx"):保存修改后的 Excel 文件.
反爬 。
除了基础代码外,我们还得了解一些反爬的技术 。
1.构造请求头 。
2.设置爬取时间间隙 。
3.多设立几个账号 。
等 。
以上爬虫简易思路,希望对你们有帮助 。
最后此篇关于爬虫简易说明的文章就讲到这里了,如果你想了解更多关于爬虫简易说明的内容请搜索CFSDN的文章或继续浏览相关文章,希望大家以后支持我的博客! 。
我正在设计一个可在hbase上运行的应用程序,并且希望以交互方式浏览集群的内容。我在hbase shell中,我想对所有以chars“abc”开头的键进行扫描。这样的键可能包括“abc4”,“abc9
我是一名优秀的程序员,十分优秀!