# GooglSearch-Tool
**GooglSearch-Tool** 是一个 Python 库,用于进行 Google 搜索并获取搜索结果。支持动态查询参数、结果去重以及自定义代理配置。这个库主要用于
Web 数据抓取和分析。
## 特性
- 支持 Google 搜索
- 可配置的查询参数(包括时间范围)
- 根据标题、URL 和摘要进行结果去重
- 支持自定义代理
- 搜索结果包括标题、链接、描述和时间信息
- 使用随机域名进行请求,防止访问受限
- 随机选择 User-Agent 请求头
- 手动更新并保存最新的 User-Agent 和 Google 域名列表(函数与保存位置在 `/config/data` 目录)
## 安装
可以通过 `pip` 安装 `googlesearch`:
```bash
pip install googlesearch-tool
以下是使用 GooglSearch-Tool 库的基本示例:
import asyncio
from googlesearch import search
async def main():
results = await search(
term="xi site:www.theguardian.com",
num=100,
tbs="qdr:d",
timeout=10
)
for result in results:
print(result)
if __name__ == "__main__":
asyncio.run(main())
term
:搜索查询字符串。num
:要获取的结果数量。tbs
:时间范围参数,如qdr:d
表示过去一天。timeout
:请求超时时间(秒)。proxies
:自定义代理配置。
每个搜索结果的对象包含以下字段:
link
:结果的 URLtitle
:结果的标题description
:结果的描述time_string
:结果的时间信息(如果有)
请检查您的网络连接和代理设置。确保代理配置正确,并且目标网站没有被屏蔽。
您可以使用 Google 搜索的高级语法(如 site:
、filetype:
等)来构造更复杂的查询字符串。
请确保在请求中设置适当的异常处理,并查看错误日志以获取更多信息。可以参考 httpx 文档 了解更多关于异常处理的信息。
欢迎对项目进行贡献!请遵循以下步骤:
- Fork 本项目
- 创建新的分支 (
git checkout -b feature-branch
) - 提交更改 (
git commit -am 'Add new feature'
) - 推送到分支 (
git push origin feature-branch
) - 提交 Pull Request
本项目使用 MIT 许可证。
如有任何问题或建议,请通过 huazz233@163.com 与我们联系。