我希望谷歌机器人识别我的页面的标题和描述,标题和描述来自数据库..
elem = driver.find_element_by_xpath("//input[@type='checkbox' and @name='conditions']")
driver.execute_script("arguments[0].removeAttribute('style')", elem)
elem.click()
和
document.title = $scope.dataFetchedFromDB.title;
它确实改变了浏览器中的标题和描述,但没有改变谷歌或Facebook提供的片段或松弛......旧的标题和描述仍然存在。
我知道ng-meta npm包,但我没有静态路由的页面,路由由页面ID决定(每个页面都有它的ID及其描述和标题) 我也读过
答案 0 :(得分:0)
请记住,虽然谷歌表示他们使用JavaScript来抓取网页,Facebook,Twitter等,但却没有。您可以测试Google对您网页的呈现from the links here。
但谷歌需要一段时间才能将这些变化编入索引。我建议您创建一个Google Search Console帐户,并让它获取并呈现您希望它重新编制索引的页面。即使这样,公开结果也需要数天或数周来反映您的更改。
此外,似乎带有Javascript的Googlebot并没有太多的耐心。尽量确保在页面加载的瞬间改变标题和描述,而不是在最后。在一些小测试中,似乎Googlebot渲染器可能会在几秒钟后超时,并且只捕获原始标题和描述。
为了让Facebook / Twitter等其他网站呈现正确的元数据,您需要在服务器端呈现这些数据。当你说'#34;查看来源......"这些简化的抓取工具将会被看到。考虑更新到Angular(来自AngularJS)并尝试为您的元数据进行服务器端呈现。