【Python】指定したwebページに非SSL(HTTP)画像コンテンツが存在するかどうか自動チェックするサンプルコード
はじめに
前回、【Python】なろう作品の「http://」画像の存在をチェックするサンプルコードという記事を書きましたが、よく考えてみると非SSL(HTTP)サイトからの画像引用は小説家になろうに限らず行われていることであり対応が必要です。
Flashを用いたwebサイトが段階を経て最近Google検索から検索除外扱いとなった様に、SSLサイトにおける非SSLサイトからの画像引用もそのうちSEO的に不利になるかもしれません。
なので今回は小説家になろうに限らず、指定したwebページの中に非SSL(HTTP)画像コンテンツが存在するかどうかをチェックするためのコードを紹介したいと思います。

サンプルコード
import requests
from bs4 import BeautifulSoup
headers = {"User-Agent": "Mozilla/5.0 (X11; Linux x86_64; rv:61.0) Gecko/20100101 Firefox/61.0"}
##### ここにURLを入力する ######
urls=["https://karupoimou.hatenablog.com/",
"https://ncode.syosetu.com/n0069fh/1/"]
###############################
def check_website():
for url in urls:
response = requests.get(url=url, headers=headers)
html = response.content
soup = BeautifulSoup(html, "lxml")
imgs = soup.find_all("img")
is_http_img="http画像コンテンツはありません"
for img in imgs:
if "http://" in img.get("src"):
print(img.get("src"))
is_http_img="http画像コンテンツが存在します"
print(url)
print(is_http_img)
check_website()
使い方
##### ここにURLを入力する ######
urls=["https://karupoimou.hatenablog.com/",
"https://ncode.syosetu.com/n0069fh/1/"]
###############################
「url=」のパラメータにチェックしたいURLを入力するだけでOKです。