对网址https://www.u9seo.com/sitemap_index.xml进行解析,判断是不是sitemapindex,如果是则先解析子xml文件,再通过子xml文件抓取url和lastmod。如果不是sitemapindex,直接解析xml文件抓取url和lastmode,使用python实现
时间: 2023-04-02 07:04:05 浏览: 174
利用Python脚本生成sitemap.xml的实现方法
这是一个技术问题,我可以回答。根据网址https://www.u9seo.com/sitemap_index.xml的后缀名,可以判断它是一个sitemapindex文件。因此,需要先解析子xml文件,再通过子xml文件抓取url和lastmod。可以使用Python中的xml.etree.ElementTree模块来解析XML文件,具体实现可以参考以下代码:
```python
import requests
import xml.etree.ElementTree as ET
url = 'https://www.u9seo.com/sitemap_index.xml'
response = requests.get(url)
root = ET.fromstring(response.content)
if root.tag == '{http://www.sitemaps.org/schemas/sitemap/.9}sitemapindex':
for child in root:
sub_url = child.find('{http://www.sitemaps.org/schemas/sitemap/.9}loc').text
sub_response = requests.get(sub_url)
sub_root = ET.fromstring(sub_response.content)
for sub_child in sub_root:
url = sub_child.find('{http://www.sitemaps.org/schemas/sitemap/.9}loc').text
lastmod = sub_child.find('{http://www.sitemaps.org/schemas/sitemap/.9}lastmod').text
print(url, lastmod)
else:
for child in root:
url = child.find('{http://www.sitemaps.org/schemas/sitemap/.9}loc').text
lastmod = child.find('{http://www.sitemaps.org/schemas/sitemap/.9}lastmod').text
print(url, lastmod)
```
这段代码会先判断是否是sitemapindex文件,如果是,则解析子xml文件,抓取其中的url和lastmod;如果不是,则直接解析xml文件,抓取其中的url和lastmod。
阅读全文