LoginSignup
12
9

More than 3 years have passed since last update.

指定したURLのリンクが有効かどうかをチェックするpythonスクリプトを作成

Last updated at Posted at 2019-11-09

目的

指定したURLのリンク先が有効かどうかをチェックするpythonスクリプトを作成したので備忘録です

コード

確認対象がURL1つの場合

以下を参考にさせて頂きました。(一部python3.0用に修正)

PythonでURLが存在しているか確認

sample.py
#-*- using:utf-8 -*-
import urllib.request, urllib.error

def checkURL(url):
    try:
        f = urllib.request.urlopen(url)
        print ("OK:" + url )
        f.close()
    except:
        print ("NotFound:" + url)

if __name__ == '__main__':
    url = "http://qiita.com/"
    checkURL(url)

実行結果

$ python sample.py
OK:http://qiita.com/

$ python sample.py
NotFound:http://nonenonenonenone.com

確認対象がURL2つ以上の場合

ファイルから複数行のURLを入力すれば良い

sample2.py
#-*- using:utf-8 -*-
import urllib.request, urllib.error

def checkURL(url):
    try:
        f = urllib.request.urlopen(url)
        print ("OK:" + url )
        f.close()
    except:
        print ("NotFound:" + url)

if __name__ == '__main__':

    with open("./input.txt") as f:
        for line in f:
            # print(line, end='')
            checkURL(line)

実行結果

$ cat input.txt 
http://qiita.com/
$ python sample2.py
OK:http://qiita.com/

CodingError対策

ImportError: No module named 'urllib2'

下記について、

import urllib2

python3.0系では以下と書く必要がある。

import urllib.request, urllib.error

参考

【Python/urllib】URLが存在しているか確認
Pythonで指定したURLにファイルが存在するかを調べる方法
PythonでURLの有無、存在をチェックするスクリプト
PythonでURLが存在しているか確認
python のModule urllib2 を利用する方法を教えて下さい
Pythonでファイルから一行ずつ読み込み

12
9
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
12
9