如今,信息传播速度惊人,许多文件都存储在 Google 文档中。因此,Google Docs 数据搜索的确是节省大量时间和精力的好方法。
在本文中,我们将研究有助于自动化这一过程的方法。我们将使用 Python 搜索 google 文档,并将这些文件保存为 JSON 格式,这是一种常见的数据存储格式。
自动检索公共文件中存储的数据有多种用途。它有助于自动收集信息,无需任何人工干预。这对以下方面非常有用
用 Python 搜刮 Google 文档对于分析此类文件的内容也很有用。这使得该服务成为接收准确而深入的信息的绝佳资源,这些信息随后将通过报告或训练机器学习系统进行处理。
要有效地执行 Google 文档数据搜刮,您需要选择合适的 Python 工具来完成这项任务。其中一些库如下:
在这些工具中做出选择,取决于您的目标是读取文件,还是希望使用结构化数据 API 调用执行高级交互。
现在,我想让大家看看如何建立工作环境和完成概述的流程。
确保已安装 python。下一步
python -m venv myenv
myenv\Scripts\activate
source myenv/bin/activate
pip install requests beautifulsoup4 google-api-python-client gspread google-auth
打开相关文件。文件应已公开授权。请按照以下步骤操作:
否则,您的脚本将返回访问错误。
文件一经发布,其 URL 就会采用以下格式:
https://docs.google.com/document/d/1AbCdEfGhIjKlMnOpQrStUvWxYz/view
1AbCdEfGhIjKlMnOpQrStUvWxYz - 文件 ID。这就是您使用 API 或 HTML 搜刮访问文件的方式。
以下是从此类文档中提取信息的两种主要方法:
在不太复杂的情况下,使用 HTML 就足够了,而在较复杂的情况下,则需要使用应用程序接口。
当文件作为网页发布时,可以检索其 HTML,然后对其进行解析,以获取相关信息:
import requests
from bs4 import BeautifulSoup
url = 'https://docs.google.com/document/d/YOUR_ID/pub'
response = requests.get(url)
if response.status_code == 200:
soup = BeautifulSoup(response.text, 'html.parser')
# 提取页面上的所有文本
text = soup.get_text()
print(text)
else:
print(f'Access error: {response.status_code}')
下面是工作算法:
如果需要更精确的信息,最合适的方法是通过公司发布的处理程序和文件,从而使用 Google Docs API。
启动步骤:
看起来是这样的
from google.oauth2 import service_account
from googleapiclient.discovery import build
# 服务帐户 JSON 文件的路径
SERVICE_ACCOUNT_FILE = 'path/to/your/service_account.json'
# 您的文件 ID
DOCUMENT_ID = 'YOUR_ID'
# 访问配置
credentials = service_account.Credentials.from_service_account_file(
SERVICE_ACCOUNT_FILE,
scopes=['https://www.googleapis.com/zh/auth/documents.readonly']
)
service = build('docs', 'v1', credentials=credentials)
# 读取文件内容
document = service.documents().get(documentId=DOCUMENT_ID).execute()
# 打印文件标题
print('Document title: {}'.format(document.get('title')))
在获取数据时,有必要对其进行有效存储,以便日后检索。
保存为 JSON:
import json
# 假设变量 `data` 包含提取的内容
with open('output.json', 'w', encoding='utf-8') as f:
json.dump(data, f, ensure_ascii=False, indent=4)
此后,您可以根据自己的要求分析或更改数据。
设置自动更新比自己执行脚本更好。
下面是一个自动化脚本示例:
import time
def main():
# 您提取和保存数据的代码
print("Data harvesting...")
# 每 6 小时运行一次
while True:
main()
time.sleep(6 * 60 * 60)
虽然 Google Docs 数据刮擦看起来简单明了,但具体挑战包括:
最后,当然也是最重要的是道德:
我们已经深入研究了使用 Python 进行 Google 文档数据搜刮。您的项目的复杂程度将决定您是选择 HTML 搜刮还是 Google Docs API。在处理公共文档时,最好谨慎行事,并考虑网络搜刮的法律后果。
这种刮擦提供了巨大的可能性,例如进行研究、监控变化和开发专业服务。有了这些知识,您就可以使用 Python 无缝地自动执行公共 Google 文档刮擦,并简化重复性任务的自动化。
Мы получили вашу заявку!
Ответ будет отправлен на почту в ближайшее время.
С уважением proxy-seller.com!
评论: 0