あなたのサイトの壊れたリンクを見つける速いスクリプト🎯
このポストは、私の個人的なウェブサイト、xtrp.ioどこで私について読んで、私のプロジェクトをチェックアウトすることができます元からです.
インターネット上のほとんどすべての他のクリックが「エラー404 :ページが見つかりません」ページで終わるようです.「おお、あなたが捜しているページは存在しません」、「申し訳ありません、要請されたURLはこのサーバーで見つかりませんでした」「Oops、何かが間違っていました.ページは見つかりませんでした.」すべてのインターネットユーザーは、これらのようなページを見ました.
私は、ウェブ開発者が巧妙な404ページを造ることにあまり注意を払わないと考えるのが重要であると思います、そして、完全に壊れたリンクを排除し始めます.
壊れたリンクを見つけるために自動プログラムを構築しました.
Python 3で書かれ、再帰的に任意のサイト上のリンクに従って404エラーのそれぞれをチェックします.プログラムがサイト全体を検索し終えたとき、それはどんな発見された壊れたリンクも出力します、そして、それらのリンクがどこで開発者がそれらを固定することができるように.
プログラムは多くのHTTPリクエストを比較的短い期間に作りますので、インターネット使用率などを意識してください.
あなたがPython 3をインストールしたかどうかチェックしてください
以下のコマンドがバージョン番号を与えない場合は、python.orgからPython 3をダウンロードします.
Pypiを使用してリクエストとBeautiFropパッケージをダウンロードします. (注:私はこれらのパッケージを維持しておらず、自分のリスクでダウンロードします)
copy以下のコードをファイルに貼り付ける
あなたの選択のウェブサイトでコマンドラインで実行します.
私はあなたがこの便利な発見を希望し、それは確かに私は私自身のサイト上のいくつかの壊れたリンクを見つける助けた.
このプログラムはCC0 Licensedですので、完全に無料ですが、保証や保証を行います.
スクロールありがとう.
-ガブリエル・ロムアルド、2019年11月10日
私のブログ記事のために私の個人的なウェブサイトをチェックしてください
注:私は以前私の偽名、フレッドアダムズの下に書いた.
導入
インターネット上のほとんどすべての他のクリックが「エラー404 :ページが見つかりません」ページで終わるようです.「おお、あなたが捜しているページは存在しません」、「申し訳ありません、要請されたURLはこのサーバーで見つかりませんでした」「Oops、何かが間違っていました.ページは見つかりませんでした.」すべてのインターネットユーザーは、これらのようなページを見ました.
私は、ウェブ開発者が巧妙な404ページを造ることにあまり注意を払わないと考えるのが重要であると思います、そして、完全に壊れたリンクを排除し始めます.
プログラム
壊れたリンクを見つけるために自動プログラムを構築しました.
Python 3で書かれ、再帰的に任意のサイト上のリンクに従って404エラーのそれぞれをチェックします.プログラムがサイト全体を検索し終えたとき、それはどんな発見された壊れたリンクも出力します、そして、それらのリンクがどこで開発者がそれらを固定することができるように.
プログラムは多くのHTTPリクエストを比較的短い期間に作りますので、インターネット使用率などを意識してください.
用途
以下のコマンドがバージョン番号を与えない場合は、python.orgからPython 3をダウンロードします.
$ python3 -V
$ pip3 install requests
$ pip3 install beautifulsoup4
find_broken_links.py
本稿ではimport requests
import sys
from bs4 import BeautifulSoup
from urllib.parse import urlparse
from urllib.parse import urljoin
searched_links = []
broken_links = []
def getLinksFromHTML(html):
def getLink(el):
return el["href"]
return list(map(getLink, BeautifulSoup(html, features="html.parser").select("a[href]")))
def find_broken_links(domainToSearch, URL, parentURL):
if (not (URL in searched_links)) and (not URL.startswith("mailto:")) and (not ("javascript:" in URL)) and (not URL.endswith(".png")) and (not URL.endswith(".jpg")) and (not URL.endswith(".jpeg")):
try:
requestObj = requests.get(URL);
searched_links.append(URL)
if(requestObj.status_code == 404):
broken_links.append("BROKEN: link " + URL + " from " + parentURL)
print(broken_links[-1])
else:
print("NOT BROKEN: link " + URL + " from " + parentURL)
if urlparse(URL).netloc == domainToSearch:
for link in getLinksFromHTML(requestObj.text):
find_broken_links(domainToSearch, urljoin(URL, link), URL)
except Exception as e:
print("ERROR: " + str(e));
searched_links.append(domainToSearch)
find_broken_links(urlparse(sys.argv[1]).netloc, sys.argv[1], "")
print("\n--- DONE! ---\n")
print("The following links were broken:")
for link in broken_links:
print ("\t" + link)
$ python3 find_broken_links.py https://your_site.com/
結論
私はあなたがこの便利な発見を希望し、それは確かに私は私自身のサイト上のいくつかの壊れたリンクを見つける助けた.
このプログラムはCC0 Licensedですので、完全に無料ですが、保証や保証を行います.
このポストを与える❤️ あなたがそれを好めば!
スクロールありがとう.
-ガブリエル・ロムアルド、2019年11月10日
私のブログ記事のために私の個人的なウェブサイトをチェックしてください
注:私は以前私の偽名、フレッドアダムズの下に書いた.
Reference
この問題について(あなたのサイトの壊れたリンクを見つける速いスクリプト🎯), 我々は、より多くの情報をここで見つけました https://dev.to/xtrp/a-quick-script-to-find-broken-links-on-your-site-1edaテキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol