- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在尝试获取 url 预览(对于支持它们的网站)以显示在我正在处理的项目中。我最近注意到 Twitter 网址不再有开放图元标记。我期待 og:title、og:description 等等,如果我没记错的话,它曾经存在于所有 twitter 链接中。
例如。如果我看到此链接的页面来源:twitter.com/DalaiLama/status/1274998376338124800
除了 og:site_name 之外,我没有看到 og 元数据。我也没有看到任何 twitter:title 或相应的内容。我错过了什么?
更新:所以原来查看源代码没有显示 og:title,但我确实在 Chrome 的“检查”菜单下看到了它。这是否意味着 JS 实际上拥有它而不是 HTML(它也只显示 og:title 而不是其他字段)?这是预期的吗?
最佳答案
Twitter 使用客户端渲染 (CSR) 在浏览器中生成 HTML
直接查看源码不会显示任何相关<meta>
标签或实际页面 HTML 内容,因为它们都是在 React 中使用 JavaScript 在客户端浏览器上动态生成的(即 CSR:客户端渲染)。事实上,HTML 源代码将包含一个 stub ,其中包含“我们检测到您的浏览器中禁用了 JavaScript。您想继续使用旧版 Twitter 吗?”。这可以通过打开开发人员工具并在页面加载/呈现期间查看“元素”选项卡或在没有 JavaScript 模拟的情况下下载页面来验证。
但是,为了改进各种著名网络爬虫的搜索引擎优化 (SEO),Twitter 将改为返回服务器端渲染 (SSR) HTML 内容(其中确实包含 <meta>
标签)。这使爬虫不必模拟 JavaScript 来查看页面,而只爬取原始 HTML 内容。 Twitter 根据提供的 User-Agent
HTTP Header 识别爬虫.服务器端渲染通常是比将 HTML 渲染卸载到客户端上更昂贵的操作,这可能是 Twitter 选择客户端渲染作为默认行为的原因。
绕过 User-Agent
接收服务器端渲染 (SSR) HTML 的白名单
各种著名的网络爬虫都被 Twitter 列入白名单,以接收服务器端呈现的 HTML。 通过欺骗User-Agent
自己请求中的HTTP Header,可以绕过白名单,接收服务器端渲染的包含相关<meta>
的HTML标签 (是否推荐这是一个完全不同的主题)。对于程序化 HTTP 请求,检查是否支持更改 User-Agent
HTTP Header在您的 HTTP 库中 - 大多数重要的库都支持此功能。whatismybrowser.com
有一个 list of well known web-crawler User-Agent
headers ;其中一些网络爬虫被列入白名单(但不一定全部)。在撰写本文时,以下是一些有效的用户代理:
Mozilla/5.0 (compatible; Googlebot/2.1; +http://www.google.com/bot.html)
Mozilla/5.0 (compatible; Baiduspider/2.0; +http://www.baidu.com/search/spider.html)
facebookexternalhit/1.1 (+http://www.facebook.com/externalhit_uatext.php)
Mozilla/5.0 (compatible; Discordbot/2.0; +https://discordapp.com)
关于html - Twitter 网站没有开放图标签?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62526483/
有人查看我的代码说下面的 SQL 查询 (SELECT * FROM...) 显然容易受到攻击。我对此进行了研究,似乎我通过使用参数化查询正确地做到了这一点,但显然我遗漏了一些东西。 app.get(
我使用 Curie 作为基本模型,使用自定义数据集创建了一个微调模型。我正在使用 Azure OpenAI 服务。 该模型正在尝试使用最大可能的 token 生成响应。例如,如果 max_token
我正在尝试将6x15数组(映射)中的随机坐标设置为数字3,但前提是该坐标的值仍为0。我要放置的值为3) 25 int shipnum; 26 int x; 27 28 shipnum = 1;
按照目前的情况,这个问题不适合我们的问答形式。我们希望答案得到事实、引用或专业知识的支持,但这个问题可能会引发辩论、争论、投票或扩展讨论。如果您觉得这个问题可以改进并可能重新打开,visit the
您好,我正在寻找“开放”、“链接”和“多重哈希”算法的伪代码。是的,我花了很多时间在谷歌上搜索,但没能找到好东西。 如果你有分享的链接,我将不胜感激 问候 最佳答案 这hash table tutor
是否可以实现 Visitor Pattern尊重 Open/Closed Principle ,但仍然可以添加新的可访问类? 开放/封闭原则指出“软件实体(类、模块、函数等)应该对扩展开放,但对修改关
很难说出这里问的是什么。这个问题模棱两可、含糊不清、不完整、过于宽泛或言辞激烈,无法以目前的形式合理回答。如需帮助澄清此问题以便可以重新打开,visit the help center . 12 年前
我创建了 Azure 开放 AI 服务我想针对特定问题训练模型。但是,自定义模板按钮被禁用。在文档中,它说明了如何生成包含要训练的问题和答案的 .Jsonl,但没有任何内容可以导入这些文件。有人拿到了
我找到了一些关于开放/封闭递归的解释,但我不明白为什么定义中包含“递归”一词,或者它与动态/静态调度相比如何。我找到的解释中有: Open recursion. Another handy featu
我正在尝试为在加权图上运行的库找出类设计。可以在这个图上执行各种算法,例如,找到两个节点之间的最短距离,两个节点之间的最长距离,两个节点之间距离小于 10 的路径数(比方说)等。 我关心的不是我所知道
谁能告诉我开放 SSL 和安全 SSL 之间的区别。 我已经在 Play 商店发布了新的 Android 应用程序,它使用远程 API。 在 API 服务器上,我已经成功安装了安全 SSL。但我仍然被
当我将 url 加载到 WebView 并尝试打开链接时,其中一些会显示如下错误页面: net::ERR_UNKNOWN_URL_SCHEME intent://maps.yandex.ru?utm_
2 月 24 日消息 据外媒 TheVerge 报道,2 月 23 日晚间,LG 宣布将该公司的 webOS 智能电视平台授权给其他电视厂商使用,目前 LG 已和 RCA、Ayonz 和康佳等电视厂
我一直在思考这个面向对象的设计问题,但无法提出令人满意的解决方案,所以我想在这里向人群开放以征求意见。 我有一个代表回合制棋盘游戏的 Game 类,出于这个问题的目的,我们可以假设它类似于 Monop
我们有一个 Web 服务,它充当我们的客户和另一个服务之间的网关。客户端向第三方服务发送消息并从其接收随机消息。客户端的服务器通过安全套接字打开到我们的 Web 服务器的 channel ,以便接收传
应用商店里有一个叫 Touchpad 的应用,最后一次更新是在 11 月 29 日,其中包含一个新功能,支持“使用设备键盘上的 Siri 键向电脑发送文本”,我想知道是否有开放的 API Siri现在
我尝试在认知搜索上下文中为 Azure 开放 AI 服务添加矢量搜索时遇到问题。选择勾选标记后,即使有可用的现有文本嵌入模型,我也无法列出任何模型。造成这种差异的可能原因是什么以及如何解决? 最佳答案
我尝试在认知搜索上下文中为 Azure 开放 AI 服务添加矢量搜索时遇到问题。选择勾选标记后,即使有可用的现有文本嵌入模型,我也无法列出任何模型。造成这种差异的可能原因是什么以及如何解决? 最佳答案
我们的堆栈:Tomcat 7、Spring 3.1.1、OpenJPA 2.2.0 我遇到了一个问题,根源是比较: server1.equals(server2); server1 和 server2
我正在使用以下命令设置一个 java EE 项目(打开)JPA。我使用 glassfish 4.0 作为我的应用程序服务器,但似乎无法让持久性发挥作用。 我面临的问题似乎是一个相当普遍的问题,因为同一
我是一名优秀的程序员,十分优秀!