成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

使用這個(gè)Python工具對網(wǎng)站的SEO問題進(jìn)行自動(dòng)化測試

開發(fā) 開發(fā)工具 測試 自動(dòng)化
作為一個(gè)技術(shù)性搜索引擎優(yōu)化開發(fā)者,我經(jīng)常被請來協(xié)助做網(wǎng)站遷移、新網(wǎng)站發(fā)布、分析實(shí)施和其他一些影響網(wǎng)站在線可見性和測量等領(lǐng)域,以控制風(fēng)險(xiǎn)。SEODeploy 可以幫助我們在網(wǎng)站部署之前識(shí)別出 SEO 問題。

[[345241]]

SEODeploy 可以幫助我們在網(wǎng)站部署之前識(shí)別出 SEO 問題。

作為一個(gè)技術(shù)性搜索引擎優(yōu)化開發(fā)者,我經(jīng)常被請來協(xié)助做網(wǎng)站遷移、新網(wǎng)站發(fā)布、分析實(shí)施和其他一些影響網(wǎng)站在線可見性和測量等領(lǐng)域,以控制風(fēng)險(xiǎn)。許多公司每月經(jīng)常性收入的很大一部分來自用戶通過搜索引擎找到他們的產(chǎn)品和服務(wù)。雖然搜索引擎已經(jīng)能妥善地處理沒有被良好格式化的代碼,但在開發(fā)過程中還是會(huì)出問題,對搜索引擎如何索引和為用戶顯示頁面產(chǎn)生不利影響。

我曾經(jīng)也嘗試通過評審各階段會(huì)破壞 SEO(搜索引擎優(yōu)化search engine optimization)的問題來手動(dòng)降低這種風(fēng)險(xiǎn)。我的團(tuán)隊(duì)最終審查到的結(jié)果,決定了該項(xiàng)目是否可以上線。但這個(gè)過程通常很低效,只能用于有限的頁面,而且很有可能出現(xiàn)人為錯(cuò)誤。

長期以來,這個(gè)行業(yè)一直在尋找可用且值得信賴的方式來自動(dòng)化這一過程,同時(shí)還能讓開發(fā)人員和搜索引擎優(yōu)化人員在必須測試的內(nèi)容上獲得有意義的發(fā)言權(quán)。這是非常重要的,因?yàn)檫@些團(tuán)隊(duì)在開發(fā)沖刺中優(yōu)先級通常會(huì)發(fā)生沖突,搜索引擎優(yōu)化者需要推動(dòng)變化,而開發(fā)人員需要控制退化和預(yù)期之外的情況。

常見的破壞 SEO 的問題

我合作過的很多網(wǎng)站有成千上萬的頁面,甚至上百萬。實(shí)在令人費(fèi)解,為什么一個(gè)開發(fā)過程中的改動(dòng)能影響這么多頁面。在 SEO 的世界中,Google 或其他搜索引擎展示你的頁面時(shí),一個(gè)非常微小和看起來無關(guān)緊要的修改也可能導(dǎo)致全網(wǎng)站范圍的變化。在部署到生產(chǎn)環(huán)境之前,必須要處理這類錯(cuò)誤。

下面是我去年見過的幾個(gè)例子。

偶發(fā)的 noindex

在部署到生產(chǎn)環(huán)境之后,我們用的一個(gè)專用的第三方 SEO 監(jiān)控工具 ContentKing 馬上發(fā)現(xiàn)了這個(gè)問題。這個(gè)錯(cuò)誤很隱蔽,因?yàn)樗?HTML 中是不可見的,確切地說,它隱藏在服務(wù)器響應(yīng)頭里,但它能很快導(dǎo)致搜索不可見。

  1. HTTP/1.1 200 OK
  2. Date: Tue May 25 2010 21:12:42 GMT
  3. [...]
  4. X-Robots-Tag: noindex
  5. [...]

canonical 小寫

上線時(shí)錯(cuò)誤地把整個(gè)網(wǎng)站的 canonical 鏈接元素全改成小寫了。這個(gè)改動(dòng)影響了接近 30000 個(gè) URL。在修改之前,所有的 URL 大小寫都正常(例如 URL-Path 這樣)。這之所以是個(gè)問題是因?yàn)?nbsp;canonical 鏈接元素是用來給 Google 提示一個(gè)網(wǎng)頁真實(shí)的規(guī)范 URL 版本的。這個(gè)改動(dòng)導(dǎo)致很多 URL 被從 Google 的索引中移除并用小寫的版本(/url-path)重新建立索引。影響范圍是流量損失了 10% 到 15%,也污染了未來幾個(gè)星期的網(wǎng)頁監(jiān)控?cái)?shù)據(jù)。

源站退化

有個(gè)網(wǎng)站的 React 實(shí)現(xiàn)復(fù)雜而奇特,它有個(gè)神奇的問題,origin.domain.com URL 退化顯示為 CDN 服務(wù)器的源站。它會(huì)在網(wǎng)站元數(shù)據(jù)(如 canonical 鏈接元素、URL 和 Open Graph 鏈接)中間歇性地顯示原始的主機(jī)而不是 CDN 邊緣主機(jī)。這個(gè)問題在原始的 HTML 和渲染后的 HTML 中都存在。這個(gè)問題影響搜索的可見性和在社交媒體上的分享質(zhì)量。

SEODeploy 介紹

SEO 通常使用差異測試工具來檢測渲染后和原始的 HTML 的差異。差異測試是很理想的,因?yàn)樗苊饬巳庋蹨y試的不確定性。你希望檢查 Google 對你的頁面的渲染過程的差異,而不是檢查用戶對你頁面的渲染。你希望查看下原始的 HTML 是什么樣的,而不是渲染后的 HTML,因?yàn)?Google 的渲染過程是有獨(dú)立的兩個(gè)階段的。

這促使我和我的同事創(chuàng)造了 SEODeploy 這個(gè)“在部署流水線中用于自動(dòng)化 SEO 測試的 Python 庫。”我們的使命是:

開發(fā)一個(gè)工具,讓開發(fā)者能提供若干 URL 路徑,并允許這些 URL 在生產(chǎn)環(huán)境和預(yù)演環(huán)境的主機(jī)上進(jìn)行差異測試,尤其是對 SEO 相關(guān)數(shù)據(jù)的非預(yù)期的退化。

SEODeploy 的機(jī)制很簡單:提供一個(gè)每行內(nèi)容都是 URL 路徑的文本文件,SEODeploy 對那些路徑運(yùn)行一系列模塊,對比生產(chǎn)環(huán)境production預(yù)演環(huán)境staging的 URL,把檢測到的所有的錯(cuò)誤和改動(dòng)信息報(bào)告出來。

 

SEODeploy overview

這個(gè)工具及其模塊可以用一個(gè) YAML 文件來配置,可以根據(jù)預(yù)期的變化進(jìn)行定制。

 

SEODeploy output

最初的發(fā)布版本包含下面的的核心功能和概念:

  1. 開源:我們堅(jiān)信分享代碼可以被大家批評、改進(jìn)、擴(kuò)展、分享和復(fù)用。
  2. 模塊化:Web 開發(fā)中有許多不同的堆棧和邊緣案例。SEODeploy 工具在概念上很簡單,因此采用模塊化用來控制復(fù)雜性。我們提供了兩個(gè)建好的模塊和一個(gè)實(shí)例模塊來簡述基本結(jié)構(gòu)。
  3. URL 抽樣:由于它不是對所有 URL 都是可行和有效的,因此我們引入了一種隨機(jī)抽取 XML 網(wǎng)站地圖 URL 或被 ContentKing 監(jiān)控的 URL 作為樣本的方法。
  4. 靈活的差異檢測:Web 數(shù)據(jù)是凌亂的。無論被檢測的數(shù)據(jù)是什么類型(如 ext、數(shù)組或列表、JSON 對象或字典、整數(shù)、浮點(diǎn)數(shù)等等),差異檢測功能都會(huì)嘗試將這些數(shù)據(jù)轉(zhuǎn)換為差異信息。
  5. 自動(dòng)化: 你可以在命令行來調(diào)用抽樣和運(yùn)行方法,將 SEODeploy 融合到已有的流水線也很簡單。

模塊

雖然核心功能很簡單,但在設(shè)計(jì)上,SEODeploy 的強(qiáng)大功能和復(fù)雜度體現(xiàn)在模塊上。模塊用來處理更難的任務(wù):獲取、清理和組織預(yù)演服務(wù)器和生產(chǎn)服務(wù)器上的數(shù)據(jù)來作對比。

Headless 模塊

Headless 模塊 是為那些從庫里獲取數(shù)據(jù)時(shí)不想為第三方服務(wù)付費(fèi)的開發(fā)者準(zhǔn)備的。它可以運(yùn)行任意版本的 Chrome,會(huì)從每組用來比較的 URL 中提取渲染的數(shù)據(jù)。

Headless 模塊會(huì)提取下面的核心數(shù)據(jù)用來比較:

  1. SEO 內(nèi)容,如標(biāo)題、H1-H6、鏈接等等。
  2. 從 Chrome 計(jì)時(shí)器Timings和 CDP(Chrome 開發(fā)工具協(xié)議Chrome DevTools Protocol)性能 API 中提取性能數(shù)據(jù)
  3. 計(jì)算出的性能指標(biāo),包括 CLS(累積布局偏移Cumulative Layout Shift),這是 Google 最近發(fā)布的一個(gè)很受歡迎的 Web 核心數(shù)據(jù)
  4. 從上述 CDP 的覆蓋率 API 獲取的 CSS 和 JavaScript 的覆蓋率數(shù)據(jù)

這個(gè)模塊引入了處理預(yù)演環(huán)境、網(wǎng)絡(luò)速度預(yù)設(shè)(為了讓對比更規(guī)范化)等功能,也引入了一個(gè)處理在預(yù)演對比數(shù)據(jù)中替換預(yù)演主機(jī)的方法。開發(fā)者也能很容易地?cái)U(kuò)展這個(gè)模塊,以收集他們想要在每個(gè)頁面上進(jìn)行比較的任何其他數(shù)據(jù)。

其他模塊

我們?yōu)殚_發(fā)者創(chuàng)建了一個(gè)示例模塊,開發(fā)者可以參照它來使用框架創(chuàng)建一個(gè)自定義的提取模塊。另一個(gè)示例模塊是與 ContentKing 結(jié)合的。ContentKing 模塊需要有 ContentKing 訂閱,而 Headless 可以在所有能運(yùn)行 Chrome 的機(jī)器上運(yùn)行。

需要解決的問題

我們有擴(kuò)展和強(qiáng)化工具庫的計(jì)劃,但正在尋求開發(fā)人員的反饋,了解哪些是可行的,哪些是不符合他們的需求。我們正在解決的問題和條目有:

  1. 對于某些對比元素(尤其是 schema),動(dòng)態(tài)時(shí)間戳?xí)a(chǎn)生誤報(bào)。
  2. 把測試數(shù)據(jù)保存到數(shù)據(jù)庫,以便查看部署歷史以及與上次的預(yù)演推送進(jìn)行差異測試。
  3. 通過云基礎(chǔ)設(shè)施的渲染,強(qiáng)化提取的規(guī)模和速度。
  4. 把測試覆蓋率從現(xiàn)在的 46% 提高到 99% 以上。
  5. 目前,我們依賴 Poetry 進(jìn)行部署管理,但我們希望發(fā)布一個(gè) PyPl 庫,這樣就可以用 pip install 輕松安裝。
  6. 我們還在關(guān)注更多使用時(shí)的問題和相關(guān)數(shù)據(jù)。

開始使用

這個(gè)項(xiàng)目在 GitHub 上,我們對大部分功能都提供了 文檔。

我們希望你能克隆 SEODeploy 并試試它。我們的目標(biāo)是通過這個(gè)由技術(shù)性搜索引擎優(yōu)化開發(fā)者開發(fā)的、經(jīng)過開發(fā)者和工程師們驗(yàn)證的工具來支持開源社區(qū)。我們都見過驗(yàn)證復(fù)雜的預(yù)演問題需要多長時(shí)間,也都見過大量 URL 的微小改動(dòng)能有什么樣的業(yè)務(wù)影響。我們認(rèn)為這個(gè)庫可以為開發(fā)團(tuán)隊(duì)節(jié)省時(shí)間、降低部署過程中的風(fēng)險(xiǎn)。

如果你有問題或者想提交代碼,請查看項(xiàng)目的關(guān)于頁面。 

 

責(zé)任編輯:龐桂玉 來源: Linux中國
相關(guān)推薦

2024-11-21 15:24:49

2011-05-16 15:36:00

軟件測試

2012-12-24 22:54:31

2009-08-19 09:00:48

單元測試框架自動(dòng)化測試

2020-07-28 08:41:21

Kubernetes自動(dòng)化測試軟件開發(fā)

2016-10-26 22:16:48

macaca自動(dòng)化測試javascript

2016-10-26 22:07:06

macaca自動(dòng)化測試javascript

2016-10-26 22:24:00

macaca自動(dòng)化測試javascript

2016-10-26 22:29:13

macaca自動(dòng)化測試javascript

2024-11-01 15:05:12

2010-09-08 15:25:09

自動(dòng)化測試技術(shù)網(wǎng)站鏈接測試

2014-11-12 09:24:00

2012-02-27 17:34:12

Facebook自動(dòng)化

2011-11-18 09:11:21

Web

2023-01-09 15:20:16

2011-05-30 17:50:23

分布式測試

2011-05-31 18:17:07

分布式測試

2022-07-04 09:00:36

Playwright自動(dòng)化測試工具

2023-02-11 21:14:58

自動(dòng)化測試框架

2023-11-21 22:48:50

點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號

主站蜘蛛池模板: 久久精品国产亚洲a | 91国内精品久久 | 日韩欧美在线播放 | 久免费视频 | 一级片网址 | 亚洲性人人天天夜夜摸 | 欧美精品一区二区三区在线播放 | 操操日 | 精品亚洲一区二区 | 亚洲精品一区二区三区蜜桃久 | 天天干天天操天天爽 | 久久大陆 | 国产一区二区三区免费 | 国产精品日韩欧美一区二区 | 青青草一区二区 | 国产精品视频一二三区 | 黄色片网站在线观看 | 免费精品久久久久久中文字幕 | 久久er99热精品一区二区 | 国产精品一区在线观看 | 国产精品3区 | 伊人狠狠干 | 华丽的挑战在线观看 | 天天亚洲 | 婷婷在线视频 | 色狠狠桃花综合 | 国产精品成人一区二区三区 | 性色av一区二区三区 | 综合久久综合久久 | 农村妇女毛片精品久久久 | 黄色大片免费播放 | 久久激情五月丁香伊人 | 亚洲高清一区二区三区 | 精品久久九九 | 国产乱码精品一区二区三区中文 | 午夜爽爽爽男女免费观看影院 | 亚洲综合首页 | 中文字幕精品一区二区三区精品 | 日本精品视频一区二区 | 91毛片在线看 | 久久久久国产一区二区三区 |