url - Google News XML API:使用国家/语言参数
问题描述
我想订阅来自 Google 新闻的 RSS/XML 提要,该提要捕获以下查询:
提及“studie”(德语为“study”)的文章,用德语撰写,来自任何国家。
我正在使用https://news.google.com/rss/search ,但对于本示例,在https://news.google.com/search上查看 UI 输出更容易,因此我将使用后者此示例中的 URL 基础。
现在,在XML API 参考中,Google 提到了影响语言或国家/地区的四个不同参数:
hl
(主机语言):假定最终用户输入的语言。即,说英语的人输入“学习”,Google 假定该术语是英语,然后将结果机器翻译回英语。对我来说,导航到将重定向一个 URLhl=en-US
(完整 URL 是https://news.google.com/?hl=en-US&gl=US&ceid=US:en)。gl
:提升原产国与参数值匹配的搜索结果。我的网络浏览器中的默认设置是gl=US
.lr
(语言限制):将搜索结果限制为以特定语言编写的文档cr
(国家限制):将搜索结果限制为源自特定国家的文档
基于以上所有内容,这将意味着 * 的 URL:
然而,这种尝试惨遭失败。它显示来自美国的英语结果,它 302 重定向到:
https://news.google.com/search?q=study&lr=lang_de&hl=en-US&gl=US&ceid=US:en
所以,为此:
- 如何正确构建 URL 参数以捕获来自任何国家/地区的“提及“studie”(德语为“study”)的文章,用德语编写。
- 到底是什么
ceid
,为什么谷歌完全没有记录它?
* IE:
>>> import urllib.parse
>>> urllib.parse.parse_qs('q=study&hl=en-US&lr=lang_de')
{'q': ['study'], 'hl': ['en-US'], 'lr': ['lang_de']}
相关但不解决任何问题:
解决方案
我正在使用以下 URL,它适用于我:
https://news.google.com/rss?q=studie&hl=de-DE&gl=DE&ceid=DE:de
您也可以在主题中搜索,请参考此答案: Google News RSS feed 的 URL 格式
推荐阅读
- arrays - 通过变量访问数组索引
- node.js - 如何在 Nodejs 中压缩图像文件?
- java - 带有样式单元格的 JavaFX.ListView 显示重复列表 (Java)
- r - Map2_df 和命名参数
- primefaces - Primefaces tieredMenu,仅限 Chrome 的错误 - 子项与菜单断开连接
- python - 在 Python 中将字符串与生成的 RDF 实体匹配
- javascript - 如何使用 JavaScript 将多个输入值添加到表中?
- java - 如何在 Appium 中列出列表中的所有元素
- python - 将文本从一个单元格复制到另一个单元格而不删除原始内容python
- git - 无法 ping github,但可以在我的工作场所通过浏览器访问 github。我运气不好?