Apify SDK for Python 使用教程
1. 项目介绍
Apify SDK for Python 是一个官方库,用于在 Python 中创建 Apify Actors。它提供了诸如 Actor 生命周期管理、本地存储模拟和 Actor 事件处理等实用功能。如果你只需要从 Python 应用程序访问 Apify API,建议使用 Apify Client for Python。
2. 项目快速启动
安装
Apify SDK for Python 可以通过 PyPI 安装,使用 Pip 进行默认安装,运行以下命令:
pip install apify
对于希望将 Apify 与 Scrapy 集成的用户,我们提供了一个名为 scrapy
的额外包。要安装带有 scrapy
额外功能的 Apify,请运行:
pip install apify[scrapy]
快速启动示例
以下是一个简单的示例,展示如何使用 Apify SDK for Python 创建一个 Actor 并读取输入数据:
from apify import Actor
async def main():
async with Actor:
# 读取 Actor 输入
input_data = await Actor.get_input()
print(f'Received input: {input_data}')
# 保存数据到 dataset
await Actor.push_data([{'message': 'Hello, world!'}])
if __name__ == "__main__":
import asyncio
asyncio.run(main())
3. 应用案例和最佳实践
应用案例
Apify SDK for Python 可以用于自动化各种网络抓取任务。例如,你可以创建一个 Actor 来定期抓取某个网站的数据,并将数据保存到 Apify 的存储中。
最佳实践
- 生命周期管理:使用 Actor 的生命周期管理功能来确保你的 Actor 在正确的时间点执行任务。
- 本地存储模拟:在开发阶段,使用本地存储模拟功能来测试你的 Actor,而不需要每次都运行在 Apify 平台上。
- 事件处理:利用 Actor 事件处理功能来监控和记录 Actor 的运行状态。
4. 典型生态项目
Apify Client for Python
如果你只需要从 Python 应用程序访问 Apify API,建议使用 Apify Client for Python。它提供了自动重试和便捷函数等功能,以提升你与 Apify API 的交互体验。
Scrapy 集成
对于需要与 Scrapy 集成的用户,Apify SDK for Python 提供了 scrapy
额外包,使得在 Scrapy 项目中使用 Apify 变得更加容易。
通过本教程,你应该已经了解了如何安装和使用 Apify SDK for Python,并掌握了一些应用案例和最佳实践。希望这能帮助你更好地利用 Apify 平台进行自动化任务。