当我观看网页的源代码在我的浏览器(Firefox)(查看 - >页面源),将其复制并粘贴到我的HTML编辑器,查看我几乎相同的页面(在这个例子中它是www.google .COM),因为它出现在我的浏览器。但是,当我得到的HTML源通过这个代码(通过谷歌应用引擎)

from google.appengine.api import urlfetch
url = "http://www.google.com/"
result = urlfetch.fetch(url)
if result.status_code == 200:
   print result.content

复制并粘贴到我的HTML编辑器,页面则看起来相当不同。为什么会这样呢?是不是有什么毛病的代码?

++++++++++++++++++++++++++++++

随访:

这是这一刻(星期日,2009年12月13日,13:01,格林威治时间,要准确)我收到的两条意见,问题(从亚伦基督教P. ),并从一个答案的亚历泰利

两者都是亚伦基督教P上。问什么实际上是获得消防福克斯源,当他们谷歌,应用引擎获得的源之间的不同通过相同的HTML编辑器中显示。

下面我已上载太屏幕截图:

一个示出了获得的防火福克斯源

另一个显示谷歌应用内-引擎获得的源

当它们都通过“MS头版”编辑器中显示。

一个不同之处,这是相当明显的,是不同的编码:在消防福克斯码一切以英文显示,而在谷歌应用内广告引擎的代码,我得到了很多不同的符号,而不是

的另一个区别是在页面中的谷歌应用程序引擎代码的顶部一些附加行。我想,这是什么亚历克斯·马尔泰利在他的回答中谈论(“...的读取和打印的做法将不得不围绕它的元数据,以及...”)。

一个更微小的差别是,对谷歌图像的方块被分成几个盒子在一个代码,同时它保持在整体中的另一个。

<强>亚历泰利建议我使用此代码(如果我理解正确他):

from google.appengine.api import urlfetch
url = "http://www.google.com/"
result = urlfetch.fetch(url)
if result.status_code == 200:
   print "content-type: text/plain"
   print

我已经试过了,但在这种情况下,什么都不显示在所有。

感谢大家的回复,请继续回答 - 我真的希望看到这个问题终于解决了。

++++++++++++++++++++++++++++++

随访:

好吧,这个问题已经解决了。

我没有支付我的充分重视亚历克斯·马尔泰利的指示,因此,想出了一个错误的代码。下面是他正确的:

from google.appengine.api import urlfetch
url = "http://www.google.com/"
result = urlfetch.fetch(url)
if result.status_code == 200:
   print "content-type: text/plain"
   print
   print result.content

此代码可显示所需正是 - 不需要额外的线在页面的顶部

好了,我还是得到了奇怪的符号,但我发现,它可能是谷歌的问题。事情是我目前在台湾,和谷歌似乎也意识到这一点,并自动从www.google.com(在英语)切换到www.google.com.tw(在中国),但是这一次,我想,已经是另一个话题。

谢谢大家谁在这里回答。

有帮助吗?

解决方案

您没有明确发出的“内容类型”头,和结束标题空行,所以第几行可能会被丢失;尝试最终print

之前加入
   print "content-type: text/plain"
   print

除此之外,你在任何情况下得到什么本质上是一个大<script>与它周围的一点点额外的HTML - 这是所有Firefox是要给你的“查看源文件”页面,同时读取和-print做法将不得不围绕它的元数据,以及,例如,“DOCTYPE”(取决于您的目标是什么的HTML编辑器,这可能会或可能不会是一个问题)。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top