抓取Google - Googlebot(桌面版)无法正确呈现页面

时间:2016-06-29 15:13:07

标签: google-webmaster-tools googlebot google-crawlers

我遇到了让Googlebot正确呈现我的网页的问题。

它正在呈现页面和我页面的一个“行”(只是页面的顶部背景图片),然后无法呈现除此之外的任何内容,甚至页脚都没有丢失大约3/4的页面。

我的网站为www.runparis.fr,并附有呈现的提取的屏幕截图。

其他可能相关的信息包括:

  • 获取的代码缺少任何内容
  • 获取状态已完成(没有丢失资源)
  • 问题在于网站范围;它发生在我的所有页面上
  • 当我检查缓存时,整个页面呈现完美
  • 抓取Google(移动版)完美呈现网站
  • 该网站在我的任何浏览器中都很好看
  • 我的页面里没有什么好玩的东西;它只是背景图像和文字。简单的东西。

我的问题是:

  • google无法呈现网页会对Google的排名方式产生影响吗?
  • 是否有任何解决问题的建议并让google正确呈现页面?

感谢任何人提供的任何帮助或建议! Googlebot render 2

编辑: 我已经完成了另一个Google抓取并渲染测试页面,发现Googlebot会在我的Wordpress安装中在我的页面构建器中呈现我已设置为“全高”的任何背景图像后停止渲染;也就是说,任何设置为占据浏览器窗口全高的图像都会导致渲染。

因此,它将呈现所有内容,直到它到达此图像,呈现,然后停止。

如前所述,我的页面并不华丽;它只是简单的背景图像和文字。让我感到惊讶的是,Googlebot无法呈现任何浏览器可以完美渲染的内容,特别是考虑到页面的简单性!

所以,我的问题是:

  • Google无法呈现我的网页会影响Google对我网站的排名吗? (鉴于缓存中的内容在我的浏览器上呈现正常)
  • 而且,这是一个常见的问题吗?是否有任何可以让Google正确呈现我的网页的修补程序?

外部来源提供的一些新信息:

  

“validator.w3.org/nu/?doc=http%3A%2F%2Frunparis.fr%2F”

     

“jigsaw.w3.org/css-validator/validator?uri=http%3A%2F%2Frunparis.fr%2F&profile=css3&usermedium=all&warning=1&vextwarning=&lang=en”

     

各种错误和警告可能解释了为什么渲染在某些工具(如Google Fetch和渲染)中受到阻碍。   浏览器比所有这些验证和渲染工具更宽容。   我猜测在Google的渲染工具中,设置背景图像和前景图像以及文本内容的css规则以错误的顺序应用,因此背景材料最终会出现在前景之上。

这些新信息是否有助于任何人了解Googlebot为何无法呈现网页?

2 个答案:

答案 0 :(得分:5)

我遇到了同样的问题,渲染器中唯一可见的东西是英雄部分,它是由英雄部分定义高度:100vh; 引起的。
这个问题使用vh css单位时,或在某些情况下使用height:100%;时发生 Here 是帮助我理解这个问题的主题和讨论:

  

我相信谷歌机器人正在这样做:
    1. 使用1024x768视口查看您的网站     2。检查window.scrollHeight的身高     3. 将其虚拟浏览器的大小调整为与window.scrollHeight相同的高度     4。拍摄截图和     5. 检查可见的元素,并根据需要计算SE得分。 (定义不可见的内容。)

部分解决了这个问题,在 mediaqueries 中添加了额外的规则:所以对于 1024px 宽度的分辨率,我把{ {1}}(规则max-height:800px;保持活动状态)在我的英雄部分,以及在mediaquery上关于 1280px 宽度和向上的规则,我设置height:100vh;(规则max-height:none;处于有效状态。

我仍然在渲染器中的 height height:100vh;附近失去了,但是在页面末尾被切断了,没有文字和任何有意义的内容。

答案 1 :(得分:0)

我在(Google Mobile-Friendly)工具上遇到了类似的问题,并且(Google抓取方式)移动版坏了,因为Googlebot没有加载我的style.css并影响了我的排名 所以我手动输出了我的stlye.css代码用于移动

add_action('wp_head','load_mobile_styles');

function load_mobile_styles () { 

 if( wp_is_mobile() )
    {

        ob_start(); ?>
        <style>
         enter code here
        </style>
        <style>
         enter code here
        </style>
        <?php
        echo ob_ob_get_clean();
    }
}