Pythonでsitemap.xmlのパースがうまくできない
解決したいこと
sitemap.xml内のURLのみを抽出したく、以下の記事を参考にコードを書いてみたのですが、うまく抽出できません…。
https://pg-chain.com/python-xml-elementtree
発生している問題・エラー
・結果が何も返ってこない。
該当するソースコード
以下の記事を参考にコードを作成
https://pg-chain.com/python-xml-elementtree
import xml.etree.ElementTree as ET
tree = ET.parse('〇〇.xml')
root = tree.getroot()
for loc in root.iter("loc"):
print(loc.text)
sitemap.xmlの中身の例
<?xml version="1.0" encoding="UTF-8"?>
<urlset xmlns:xsi="http://www.w3.org/sample" xmlns="http://www.sitemaps.org/sample" xmlns:image="http://www.google.com/sample/1.1" xmlns:video="http://www.google.com/sample/1.1" xmlns:geo="http://www.google.com/sample/1.0" xmlns:news="http://www.google.com/sample/0.9" xmlns:mobile="http://www.google.com/sample/1.0" xmlns:pagemap="http://www.google.com/sample/1.0" xmlns:xhtml="http://www.w3.org/sample" xsi:schemaLocation="http://www.sitemaps.org/sample">
<url>
<loc>https://sample.jp</loc>
<lastmod>2023-01-25T00:57:00+09:00</lastmod>
<changefreq>daily</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://sample2.jp</loc>
<lastmod>2023-01-25T00:57:00+09:00</lastmod>
<changefreq>daily</changefreq>
<priority>0.8</priority>
</url>
</urlset>
自分で試したこと
<sample>
<url>
<loc>https://sample.jp</loc>
<lastmod>2023-01-25T00:57:00+09:00</lastmod>
<changefreq>daily</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://sample2.jp</loc>
<lastmod>2023-01-25T00:57:00+09:00</lastmod>
<changefreq>daily</changefreq>
<priority>0.8</priority>
</url>
</sample>
・上記のように<?xml version="1.0" encoding="UTF-8"?>と<urlset>部分を削除して実行したところ、抽出ができた。
→上記タグがあるせいできちんと<loc>を指定できていない?
どういう指定をすればURLをlocタグのURLを抽出できるか、ご教示いただけますと幸いですm(__)m