如何使用 Web Scraper API 高效采集 Facebook 用户帖子信息

news2024/12/25 12:48:14

目录

  • 前言
  • 一、什么是Web Scraper API
  • 二、Web Scraper API 的优势:
  • 三、Web Scraper API 适用场景
  • 四、实践案例
    • 目标需求
    • 视频讲解
    • 1、选择Web Scraper API
    • 2、登录注册
    • 3、进入用户控制面板
    • 4、选择API
    • 5、触发数据收集 API
    • 6、获取爬虫结果
    • 7、分析爬虫结果
      • (1)错误的数据
      • (2)正确的数据
    • 8、获取快照列表
    • 9、监控进度API
    • 10、API logs
  • 五、使用 bright data 的 Web Scraper API 优势
    • 1、一次API调用,大量数据
    • 2、不用担心代理和验证码
  • 总结

在这里插入图片描述

前言

如今很多企业依赖于实时数据来把握市场趋势,Web Scraper API 提供了一种高效、自动化的数据获取方式,使公司能够低成本地收集到大规模的公开数据。相较于手动收集信息,Web Scraper API 不仅更快更准确,还能帮助企业获得竞争情报、客户偏好等信息,尤其对于大模型和各种数据应用场景都非常有帮助。本文中的案例将使用 bright dataWeb Scraper API 采集 Facebook 用户帖子信息。

官方地址:https://get.brightdata.com/pzwebscraper

一、什么是Web Scraper API

Web Scraper API是一种基于云的服务,可以简化网页数据提取,提供自动处理IP轮换、CAPTCHA解决方案,并将数据解析为结构化格式。它可以高效、可扩展地收集数据,专为需要无缝访问有价值网页数据的企业量身定制。

二、Web Scraper API 的优势:

  • 自动化数据采集:通过API接口,可以轻松抓取互联网上的大量数据,无需人工手动提取,节省时间和人工成本支持抓取结构化和非结构化的数据,能处理各种网页布局(如HTML、JavaScript渲染内容等)。

  • 高效与可定制化:适用于不同的网页内容和结构,可以根据需求定制抓取规则。
    支持批量抓取和定时抓取,保证了数据采集的持续性和一致性。

  • 无需复杂配置:无需编写复杂的爬虫代码,API调用更为简便,适合那些没有编程背景的用户。
    大多数Web Scraper API都提供了图形化的界面来配置抓取规则,降低了技术门槛。

  • 实时数据提取:可实现实时获取互联网上的数据,使得获取的内容更加时效,适用于需要最新数据的应用。

  • 数据清洗与格式化:很多API在数据抓取后可以直接进行初步清洗和格式化处理,输出结构化的数据(如CSV、JSON等),方便后续使用。

那么网页爬虫API对于手动爬虫的优势?

爬虫API克服了手动网页爬取的局限性,例如应对网站结构变化、遭遇封锁和验证码,以及与基础设施维护相关的高成本。它提供了一种自动化、可扩展且可靠的数据提取解决方案,大大降低了运营成本和时间。

三、Web Scraper API 适用场景

  • 大模型数据训练和更新:大模型依赖大量的数据训练和优化,Web Scraper API可以帮助从互联网上快速收集特定领域的数据,为模型提供最新的训练数据。可以帮助提供动态更新的输入数据,尤其是对于市场趋势、消费者行为等需要实时反馈的领域。
  • 市场调研与竞品分析:自动抓取竞争对手的产品信息、价格、评论等数据,帮助分析市场趋势和消费者反馈。
  • 新闻和社交媒体分析:从新闻网站、社交媒体平台抓取实时热点、舆情分析数据,有助于做情感分析、趋势预测等。
  • 金融行业:从金融新闻、股票分析、市场报告等网页抓取数据,帮助建立预测模型和风险评估。
  • 电商和零售分析:抓取电商平台的产品详情、价格动态、用户评价等信息,进行销售预测和市场洞察。
  • 科学研究与学术论文抓取:自动从学术网站和数据库抓取最新的研究成果、论文摘要等数据,帮助建立科学文献分析工具。

四、实践案例

目标需求

爬取下面三位FaceBook用户的10条帖子信息

网址主页
https://www.facebook.com/LeBron/在这里插入图片描述
https://www.facebook.com/apple在这里插入图片描述
https://www.facebook.com/gagadaily/在这里插入图片描述

视频讲解

如何使用 Web Scraper API 高效采集 Facebook 用户帖子信息

1、选择Web Scraper API

爬虫API的独特性在于其专门功能,如批量请求处理、数据发现和自动验证,并由包括住宅代理和JavaScript渲染等先进技术支持。这些功能需要确保广泛访问、高数据完整性和整体效率,因此我选用 bright dataWeb Scraper API 作为抓取数据的工具。

2、登录注册

首先进入 bright data 官方网站 进行注册。点击网站右上方“注册”按钮后,填写姓名、邮箱、手机号、公司规模即可注册完成✅
在这里插入图片描述

3、进入用户控制面板

可以看到左侧第二个菜单就是Web Scraper API,点击之后就可以看到 Web Scraper API 的详细信息。
在这里插入图片描述
其中我们可以看到一些比较受欢迎的API,比如:Facebook、Instagram、TikTok、Twitter等相关信息的APi,另外也可以看到我们在运行的 API logs

4、选择API

我们可以在列表中有上百种API,包括了市场数据、B2B数据、电子商务数据、财务数据、新闻资料、房地产数据、社交媒体数据、旅行数据等。这里我选择社交媒体数据中比较受欢迎的Facebook - Comments - Collect by URL API 。
在这里插入图片描述

5、触发数据收集 API

这里需要填写收集数据的网址、帖子数量(num_of_posts)、不包括的帖子(posts_to_not_include)、开始日期(start_date)、结束日期(end_date),这里我们爬取三位Facebook用户的10条帖子信息。

添加爬虫的细节
在这里插入图片描述

这里勾选了Include errors report with the results选项,且修改了下面四个选项的内容,如下:
在这里插入图片描述

接着需要获取 API Token,点击Get API token即可生成你的Token,注意保存在本地,在下面请求API时需要用到。
在这里插入图片描述
然后执行请求命令
在这里插入图片描述

这里我选择是Linux Bash版本的命令,注意一定要把命令中的API_TOKEN换成上面你生成的TOKEN。随后执行生成快照id

在这里插入图片描述

生成的快照id结果为如下:

{"snapshot_id":"s_m342n89p1h56iw97em"}%  

6、获取爬虫结果

提供了两种,一种是通过下载快照,另一种是发送至仓库,这里我选择下载快照的方式,并且选择文件的格式为 JSON 、Compress files (.gz),然后执行右侧的代码命令,需要注意先填写快照id,然后用生成的TOKEN替换掉 API_TOKEN

在这里插入图片描述
随后执行下载结果命令,则会出现下面的提示,状态处于running运行中,稍等片刻(注意如果前面选择的日期或者数据量比较大的话,等待时间会略长)。

在这里插入图片描述
随后我们继续执行上面的代码,会看到快照正在构建中

{"status":"building","message":"Snapshot is building, try again in 10s"}% 

等待一段时间,继续执行上面的代码,就可以看到我们最终爬取的数据啦!

直接在终端查看数据不是很方便,可以生成json文件便于查看,只需要在刚刚的命令后面加上--output data.json,就可以在当前目录下生成 data.json文件
在这里插入图片描述
生成的data.json文件。
在这里插入图片描述

7、分析爬虫结果

(1)错误的数据

生成的json数据中,其中爬取地址为https://www.facebook.com/gagadaily/https://www.facebook.com/apple/在各自设置下的start_dateend_date时间范围爬取失败,

	"post_id": null,
		"page_name": null,
		"post_external_image": null,
		"post_type": null,
		"following": null,
		"link_description_text": null,
		"timestamp": "2024-11-05T06:31:43.199Z",
		"input": {
			"url": "https://www.facebook.com/gagadaily/",
			"num_of_posts": 10,
			"start_date": "10-20-2024",
			"end_date": "10-20-2024"
		},
		"warning": "posts for the specified period were not found",
		"warning_code": "dead_page"
	},
	{
		"timestamp": "2024-11-05T06:36:23.938Z",
		"input": {
			"url": "https://www.facebook.com/apple/",
			"num_of_posts": 10,
			"start_date": "10-20-2024",
			"end_date": "11-01-2024"
		},
		"error": "Crawler error: Timed out waiting for graphql response",
		"error_code": "timeout"
	},

(2)正确的数据

因为数据太多,这里截取其中一条数据

{
		"url": "https://www.facebook.com/LeBron/videos/7922013201234317/",
		"post_id": "1112318133592414",
		"user_url": "https://www.facebook.com/LeBron",
		"user_username_raw": "LeBron James",
		"content": "What are we even talking about here?? When I think about my kids and my family and how they will grow up, the choice is clear to me. VOTE KAMALA HARRIS!!!",
		"date_posted": "2024-10-31T21:28:41.000Z",
		"num_comments": 1983,
		"num_shares": 4085,
		"num_likes_type": {
			"type": "Like",
			"num": 2556
		},
		"page_name": "LeBron James",
		"profile_id": "100044427126625",
		"page_intro": "The Official LeBron James Facebook page.\n\nwww.lebronjames.com",
		"page_category": "Athlete",
		"page_logo": "https://scontent.fmnl17-3.fna.fbcdn.net/v/t39.30808-1/461936413_1091563265667901_6592324197866706840_n.jpg?stp=dst-jpg_s200x200&_nc_cat=1&ccb=1-7&_nc_sid=f4b9fd&_nc_ohc=qTe8zYXlYsQQ7kNvgHBfFD2&_nc_zt=24&_nc_ht=scontent.fmnl17-3.fna&_nc_gid=AYpf7yucZIySMKrlXBSh-pJ&oh=00_AYAZuaCma8ReH0PhBPf2K46WnXGbnxsc6N4OEP1crs2mkA&oe=672F87E7",
		"page_followers": 27000000,
		"page_is_verified": true,
		"attachments": [
			{
				"id": "7922013201234317",
				"type": "Video",
				"url": "https://scontent.fmnl17-6.fna.fbcdn.net/v/t15.5256-10/465066739_890906873146323_7371909864090599845_n.jpg?stp=dst-jpg_p296x100&_nc_cat=109&ccb=1-7&_nc_sid=7965db&_nc_ohc=GAT9utKXJdoQ7kNvgEDaPy4&_nc_zt=23&_nc_ht=scontent.fmnl17-6.fna&_nc_gid=Ab94zEj6O3ME80PjpwtPl_C&oh=00_AYCYKzhNEZ6FLxoQoEKI1uQgrhK58t6sh4iGrC5mOq_skA&oe=672F7951",
				"video_length": "75108",
				"attachment_url": "https://www.facebook.com/LeBron/videos/7922013201234317/",
				"video_url": "https://video.fmnl17-3.fna.fbcdn.net/o1/v/t2/f2/m69/AQM4uas0Hm2iFEVJe8Z0ww2is_mZJJlW2zUYYO3FOi_88_3uUPuhZuDPQvFUcK4xVKwBhM-vKp2fFCDt7l-s78hX.mp4?efg=eyJ4cHZfYXNzZXRfaWQiOjEyNzAzNTIyNDM5OTUwMTcsInZlbmNvZGVfdGFnIjoieHB2X3Byb2dyZXNzaXZlLkZBQ0VCT09LLi5DM2UuNzIwLmRhc2hfaDI2NC1iYXNpYy1nZW4yXzcyMHAifQ&_nc_ht=video.fmnl17-3.fna.fbcdn.net&_nc_cat=104&strext=1&vs=45419d027a7075ba&_nc_vs=HBksFQIYOnBhc3N0aHJvdWdoX2V2ZXJzdG9yZS9HTHB0dHh1QU9UUkZYbnNFQVBZOXdWVEtVQlZUYm1kakFBQUYVAALIAQAVAhg6cGFzc3Rocm91Z2hfZXZlcnN0b3JlL0dFaFp1UnNHUkJid01zWU5BQmRpRDZZdjhHby1ickZxQUFBRhUCAsgBACgAGAAbAogHdXNlX29pbAExEnByb2dyZXNzaXZlX3JlY2lwZQExFQAAJpLG8eOd2MEEFQIoA0MzZSwXQFLG6XjU_fQYGWRhc2hfaDI2NC1iYXNpYy1nZW4yXzcyMHARAHUCAA&ccb=9-4&oh=00_AYBtuf70c0Pv2GUxzxMa5xQg403E4P1OzWYe-T_iE758ZA&oe=672BAE2B&_nc_sid=1d576d"
			}
		],
		"post_external_image": null,
		"page_url": "https://www.facebook.com/LeBron",
		"header_image": "https://scontent.fmnl17-1.fna.fbcdn.net/v/t1.6435-9/139267227_247937373363832_6589163605052708194_n.jpg?stp=dst-jpg_s960x960&_nc_cat=100&ccb=1-7&_nc_sid=cc71e4&_nc_ohc=jxGtOqQH7PQQ7kNvgElz9kR&_nc_zt=23&_nc_ht=scontent.fmnl17-1.fna&_nc_gid=AYpf7yucZIySMKrlXBSh-pJ&oh=00_AYBH8GeOiJeU3E69PAzYJEIL2b5YCczNFLKfNzBdzuH2aA&oe=6751412E",
		"avatar_image_url": "https://scontent.fmnl17-3.fna.fbcdn.net/v/t39.30808-1/461936413_1091563265667901_6592324197866706840_n.jpg?stp=dst-jpg_s200x200&_nc_cat=1&ccb=1-7&_nc_sid=f4b9fd&_nc_ohc=qTe8zYXlYsQQ7kNvgHBfFD2&_nc_zt=24&_nc_ht=scontent.fmnl17-3.fna&_nc_gid=AYpf7yucZIySMKrlXBSh-pJ&oh=00_AYAZuaCma8ReH0PhBPf2K46WnXGbnxsc6N4OEP1crs2mkA&oe=672F87E7",
		"profile_handle": "LeBron",
		"is_sponsored": false,
		"shortcode": "1112318133592414",
		"video_view_count": 55668,
		"likes": 2556,
		"post_type": "Post",
		"following": 114,
		"link_description_text": null,
		"timestamp": "2024-11-05T06:31:43.816Z",
		"input": {
			"url": "https://www.facebook.com/LeBron/",
			"num_of_posts": 10,
			"posts_to_not_include": "",
			"start_date": "10-20-2024",
			"end_date": "11-01-2024"
		}
	},

我们在他的Facebook账号首页可以看到爬虫的这条数据信息
在这里插入图片描述

8、获取快照列表

Management APIs菜单下,可以看到Get snapshots list,需要设置Dataset ID以及Status (ready, running, failed)。使用此 API 检索数据快照列表,显示收集的数据的已保存版本,其状态为“就绪”、“正在运行”或“失败”以指示处理阶段。
在这里插入图片描述
复制右侧代码,在终端执行命令,注意替换TOKEN
在这里插入图片描述

得到如下数据,是我的快照列表

[
	{
		"id": "s_m33ruu64vapj5x5e",
		"dataset_id": "gd_lkaxegm826bjpoo9m5",
		"status": "ready",
		"dataset_size": 1110,
		"created": "2024-11-05T01:29:04.060Z"
	},
	{
		"id": "s_m33rva5t1901k40t9f",
		"dataset_id": "gd_lkaxegm826bjpoo9m5",
		"status": "ready",
		"dataset_size": 1358,
		"created": "2024-11-05T01:29:24.785Z"
	},
	{
		"id": "s_m33vhh4y1sqjtfgmws",
		"dataset_id": "gd_lkaxegm826bjpoo9m5",
		"status": "ready",
		"dataset_size": 1683,
		"created": "2024-11-05T03:10:39.106Z"
	},
	{
		"id": "s_m341tbg4lwht5mr2e",
		"dataset_id": "gd_lkaxegm826bjpoo9m5",
		"status": "ready",
		"dataset_size": 11,
		"created": "2024-11-05T06:07:49.300Z"
	},
	{
		"id": "s_m342n89p1h56iw97em",
		"dataset_id": "gd_lkaxegm826bjpoo9m5",
		"status": "ready",
		"dataset_size": 9,
		"created": "2024-11-05T06:31:04.861Z"
	}
]

9、监控进度API

使用此 API 检查您的数据收集状态。输入“触发数据收集 API”响应提供的快照 ID。它将在数据收集期间返回“正在运行”,并在数据可用时返回“就绪”。
在这里插入图片描述
执行右侧的命令,注意需要替换TOKEN
在这里插入图片描述
可以看到输出结果,该快照已经处于ready的状态。

{"status":"ready","snapshot_id":"s_m33rva5t1901k40t9f","dataset_id":"gd_lkaxegm826bjpoo9m5","error_codes":{"timeout":1},"records":1358,"errors":1,"collection_duration":2170955}

10、API logs

在API logs 菜单中看到当前快照id对应的数据收集状态,如下:可以看到目前正在爬取数据中。

在这里插入图片描述

五、使用 bright data 的 Web Scraper API 优势

1、一次API调用,大量数据

bright data 的 Web Scraper API 适用于各种使用场景的抓取,无需开发和维护网页抓取工具。使用网页一次API调用,轻松提取大量网页数据,并且在爬取数据过程中具有以下特点。

  • 数据发现:检测数据结构和模式,以确保高效、有针对性的数据提取。
  • 批量请求处理:减少服务器负载,并优化大规模抓取任务的数据收集。
  • 数据解析:高效地将原始HTML转换为结构化数据,简化数据集成和分析。
  • 数据验证:确保数据可靠性,节省手动检查和预处理的时间。

2、不用担心代理和验证码

在这里插入图片描述

总结

在本文案例中,使用 bright dataWeb Scraper API 真的是非常的高效!它支持自定义配置,可以根据需求选择抓取的页面、数据量、日期,非常适合应对不同的数据需求。还能够轻松集成到现有的数据处理或分析管道中。尤其对开发人员来说,通常只需少量代码即可调用和处理数据。在抓取数据过程中,效率真的很高,么有出现任何个人信息泄露的状况,并且成本也不是很高,完全可以hold住。

总的来说,Web Scraper API 带来了强大的数据获取能力和灵活性,强烈推荐使用!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2238362.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Qt_day3_信号槽

目录 信号槽 1. 概念 2. 函数原型 3. 连接方式 3.1 自带信号 → 自带槽 3.2 自带信号 → 自定义槽 3.3 自定义信号 4. 信号槽传参 5. 对应关系 5.1 一对多 5.2 多对一 信号槽 1. 概念 之前的程序界面只能看,不能交互,信号槽可以让界面进行人机…

Elastic 通用分析:提高性能并降低成本

作者:来自 Elastic Luca Wintergerst•Tim Rhsen 在这篇博客中,我们将介绍我们的一位工程师的一项发现如何帮助我们在 QA 环境中节省数千美元的成本,并且一旦我们将这一变化部署到生产中,还可以节省更多的成本。 在当今的云服务和…

【WRF理论第十一期】检查WPS输出:geogrid和metgrid 的输出nc数据+ungrib输出WPS格式

【WRF理论第十一期】检查WPS输出:geogrid和metgrid输出nc数据ungrib输出WPS格式 检查WPS输出WPS 输出检查的重要性使用 NetCDF 格式查看 geogrid 和 metgrid 的输出检查和可视化数据的工具 ungrib 输出数据的格式使用 plotfmt 工具查看 ungrib 输出 参考 上一篇博客…

万字长文解读深度学习——卷积神经网络CNN

推荐阅读: 卷积神经网络(CNN)详细介绍及其原理详解 CNN笔记:通俗理解卷积神经网络 文章目录 🌺深度学习面试八股汇总🌺主要组件输入层卷积层 (Convolutional Layer)批归一化层(Batch Normalizat…

Redis生产问题(缓存穿透、击穿、雪崩)——针对实习面试

目录 Redis生产问题什么是缓存穿透?如何解决缓存穿透?什么是缓存击穿?如何解决缓存击穿?缓存穿透和缓存击穿有什么区别?什么是缓存雪崩?如何解决缓存雪崩? Redis生产问题 什么是缓存穿透&#x…

19、centos7优化

优化条目: 优化条目: 1.sudo管理用户授权 (不用root管理,以普通用户的名义通过sudo提权) 2.更改默认的远程连接SSH服务端口,禁止root用户远程连接,(提前建立普通用户)(甚至更改为只监听内网IP…

河北省内首台心磁图仪正式落户河北梅奥心血管病医院

河北省内首台心磁图仪正式落户河北梅奥心血管病医院。 2024年11月9日,河北梅奥心血管病医院迎来了一场激动人心的历史时刻——河北省首台心磁图仪启用仪式在医院内隆重举行,标志着这一顶尖医疗设备正式入驻,为医院心脏影像诊断技术开启了全新…

【C语言刷力扣】283.移动零

题目&#xff1a; 解题思路&#xff1a; 将不为 0 的元素依次放在数组前面&#xff0c;再在数组末尾补上 0。 时间复杂度&#xff1a; 空间复杂度&#xff1a; void moveZeroes(int* nums, int numsSize) {int i 0, j 0;for (; i < numsSize; i) {if (nums[i]) {nums…

网络初阶——应用层:HTTPS 协议

一、HTTPS & HTTP 的区别 从协议的名字来看&#xff0c;HTTP 比 HTTPS 少了一个 S。而这个 “S”&#xff0c;其实可以理解成 “Safe”&#xff0c;所以不难看出&#xff0c;其实 HTTPS 就是 HTTP 的安全版。就是为了保证客户端 cookie 的传输安全的。 二、相关概念 1、明…

怎么禁止Ubuntu自动更新升级

怎么禁止Ubuntu自动更新升级 笔者在做MIT 6.S081的时候发现他给我的qemu自动更新了又卡住了&#xff0c;故关闭了自动更新 文章目录 怎么禁止Ubuntu自动更新升级一、图形化修改二、基于命令行修改配置文件的方法 一、图形化修改 1.打开设置->软件和更新->更新 2.选择自…

Spring Boot框架:构建符合工程认证的计算机课程

2相关技术 2.1 MYSQL数据库 MySQL是一个真正的多用户、多线程SQL数据库服务器。 是基于SQL的客户/服务器模式的关系数据库管理系统&#xff0c;它的有点有有功能强大、使用简单、管理方便、安全可靠性高、运行速度快、多线程、跨平台性、完全网络化、稳定性等&#xff0c;非常…

机器学习—选择激活函数

可以为神经网络中的不同神经元选择激活函数&#xff0c;我们将从如何为输出层选择它的一些指导开始&#xff0c;事实证明&#xff0c;取决于目标标签或地面真相标签y是什么&#xff0c;对于输出层的激活函数&#xff0c;将有一个相当自然的选择&#xff0c;然后看看激活函数的选…

【学习记录】使用CARLA录制双目摄像头SLAM数据

一、数据录制 数据录制的部分参考了网上的部分代码&#xff0c;代码本身并不复杂&#xff0c;基本都是简单的CARLA语法&#xff0c;关键的一点在于&#xff0c;CARLA内部本身并没有预设的双目摄像头&#xff0c;需要我们添加两个朝向相同的摄像头来组成双目系统&#xff0c;这…

[论文粗读][REALM: Retrieval-Augmented Language Model Pre-Training

引言 今天带来一篇检索增强语言模型预训练论文笔记——REALM: Retrieval-Augmented Language Model Pre-Training。这篇论文是在RAG论文出现之前发表的。 为了简单&#xff0c;下文中以翻译的口吻记录&#xff0c;比如替换"作者"为"我们"。 语言模型预训练…

【人工智能】ChatGPT多模型感知态识别

目录 ChatGPT辅助细化知识增强&#xff01;一、研究背景二、模型结构和代码任务流程一&#xff1a;启发式生成 三、数据集介绍三、性能展示实现过程运行过程训练过程 ChatGPT辅助细化知识增强&#xff01; 多模态命名实体识别&#xff08;MNER&#xff09;最近引起了广泛关注。…

【黑马点评debug日记】

q1:登录无session跳转主页 p30&#xff0c;页面登录后返回&#xff0c;然后点击我的&#xff0c;需要重新设置&#xff0c;拦截器都没有问题。 参考&#xff1a; redis 黑马点评p30 login没有正常跳转&#xff0c;修改前端代码后还是一直跳转主界面_黑马点评登录后跳转到主页…

地面远阴影对光伏电站的影响

影响因素 1、太阳高度角和方位角 太阳高度角是指太阳光的入射方向和地平面之间的夹角。太阳高度角随时间、季节和地理位置的变化而变化。 方位角是指太阳光线在水平面上的投影与正南方向的夹角。方位角也随时间和地理位置的变化而变化。 可以通过天文公式或者专业的太阳位置…

消息队列高级

目录 消息可靠性 生产者消息确认 第一步&#xff1a;修改application.yml配置文件信息 第二步&#xff1a;定义发送者确认confirm回调方法 第三步&#xff1a;创建消息发送者回执return回调方法&#xff08;确保消息从交换机到消息队列&#xff09; 总结&#xff1a; 消息持…

宏观经济学笔记

【拯救者】宏观经济学速成 国民生产总值GNP: GNP 衡量一国(地区)成员在一定时期内运用生产要素所生产的全部最终产品和服务的市场价值。凡是本国国民所 创造的收入&#xff0c;不管生产要素是否在国内&#xff0c;都计入本国GNP中。 GDP本国居民在本国创造的价值外国居民在本国…

ONLYOFFICE 8.2测评:功能增强与体验优化,打造高效办公新体验

引言 随着数字化办公需求的不断增长&#xff0c;在线办公软件市场竞争愈加激烈。在众多办公软件中&#xff0c;ONLYOFFICE 无疑是一个颇具特色的选择。它不仅支持文档、表格和演示文稿的在线编辑&#xff0c;还通过开放的接口与强大的协作功能&#xff0c;吸引了众多企业和个人…