今日はAMPのエラーを修正しました

200000

今日はAMPのエラーを修正しました。

<amp-img src="hoge.jpg"width="640"height="1022"/ layout="responsive"><amp-img>

imgタグ内に『/』がはさまっています。こんな小さいミスでもAMPの適用外となり、AMPページとして検出されません。原因はこちらになります。

pattern = re.compile(r'<img([^>]+)src="https?:/>]*)>')

kiji['body'] = re.sub(pattern, r'<amp-img \1src="/ layout="responsive"></amp-img>', kiji['body'])

通常のページにあるimgタグはAMP用に置換されますが、その時『<img src="aa.jpg"width="200"height="200"/>』のようにimgタグの最後尾にスラッシュがついてる場合、その次にスペースを入れてresponsiveエレメントを導入しています。

IMGタグにスラッシュをつけるのはもう古いので最近はしていませんでしたが、昔の記事ではついたままでした。下記を実行してスラッシュを全て取り除き、完了です。

content = re.sub(pattern, r'/', content)
mongo.kiji.update({status:'公開', content:content});
関連記事