起因
其实这是一个老问题了,每次把站点地图的网址提交给谷歌总是报错:
神奇的是同样的网址给bing就能过,也不知道谷歌抽了什么风==。不过后来随着站点推送插件的出现,这个问题我就一直没管了,直到前两天换服务器才想起来这个久违的问题,再次尝试解决。
解决方案
前几日在浏览插件市场的时候,发现了一个叫静态网络服务的插件,简单来说就是方便你用Halo部署一些静态网页,于是我突发奇想,如果我把sitemap的网页内容复制下来,重新发布到一个新的的静态网页中,会不会成功?
说干就干,我复制了sitemap.xml的源代码,把它粘贴到一个新的目录下,比如/sitemap/sitemap.xml,结果居然成了,这真是让人摸不着头脑:
不管怎么说,虽然方法有些奇怪,但是结果是好的,接下来就是把过程写成代码然后丢到定时任务执行就是了:
import requests
import os
# 设置XML文件的URL和保存目录
url = '' # 替换为实际的XML文件URL
save_directory = '/opt/1panel/apps/halo/halo/data/static/sitemap/' # 替换为你想要保存的目录
file_name = 'sitemap.xml' # 保存的文件名
# 创建保存目录(如果不存在)
if not os.path.exists(save_directory):
os.makedirs(save_directory)
# 获取XML文件
response = requests.get(url,verify=False)
# 检查请求是否成功
if response.status_code == 200:
# 保存文件
file_path = os.path.join(save_directory, file_name)
with open(file_path, 'wb') as file:
file.write(response.content)
print(f'文件已保存到: {file_path}')
else:
print(f'无法访问文件,状态码: {response.status_code}')
评论区