首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用gdata-python-client下载Google站点页面内容源

使用gdata-python-client下载Google站点页面内容源
EN

Stack Overflow用户
提问于 2012-09-28 06:32:00
回答 1查看 723关注 0票数 2

我的最终目标是从Google站点页面导入一些数据。我正在尝试使用gdata-python (v2.0.17)下载特定的内容提要:

代码语言:javascript
复制
self.client = gdata.sites.client.SitesClient(source=SOURCE_APP_NAME)
self.client.client_login(USERNAME, PASSWORD, source=SOURCE_APP_NAME, service=self.client.auth_service)     
self.client.site = SITE
self.client.domain = DOMAIN

uri = '%s?path=%s' % (self.client.MakeContentFeedUri(), '[PAGE PATH]')
feed = self.client.GetContentFeed(uri=uri)
entry = feed.entry[0]
...

结果entry.content具有xhtml格式的页面内容。但是这棵树不包含来自页面的任何计划文本数据。只有html页面结构和链接。

例如,我的测试页面

代码语言:javascript
复制
 <div>Some text</div>

ContentFeed条目只有带有text=None的div节点。

我已经调试了gdata-python请求/响应,并在原始缓冲区中检查了来自服务器的解析数据--任何内容中的计划文本数据。因此,它是Google的一个bug。

可能有什么解决办法吗?我可以使用一些普通的请求参数吗?这里出什么问题了?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2013-04-05 14:16:10

这段代码针对Google域和gdata 2.0.17适用于我:

代码语言:javascript
复制
import atom.data
import gdata.sites.client
import gdata.sites.data

client = gdata.sites.client.SitesClient(source='yourCo-yourAppName-v1', site='examplesite', domain='example.com')
client.ClientLogin('admin@example.com', 'examplepassword', client.source);

uri = '%s?path=%s' % (client.MakeContentFeedUri(), '/home')
feed = client.GetContentFeed(uri=uri)
entry = feed.entry[0]
print entry 

当然,它和你的差不多,但它可能会帮助你证明或反驳一些东西。祝好运!

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/12634738

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档