异步抓取网站url最后生成sitemap很好用

2022-10-11 20:53:23 145 0
魁首哥

作为seoer,在优化网站的时候,肯定离不开对百度站长平台上的监控,而在百度站长平台有一个sitemap文件,可以批量将网站url提交给百度站长平台。

我们再来看看百度对sitemap的生成规则,看看百度对sitemap有什么格式要求,这里可以看到百度支持两种格式一种是txt格式,另一种是xml的格式,今天以xml的格式去生成网站的sitemap文件:

此次用python生成sitemap,首先需要抓取全站的url,然后将全站的url保存的xml的文件中。这里我用异步加载请求的方式获取全站url,异步的方式有个优势就是节约请求时间,速度快,在应对网站没有反爬虫措施的情况下,可以用异步加载是比较不错的选择

好了,思路有了接下来我们开始写代码:

一、设置抓取的网站

此次用BeautifulSoup进行解析,导入asyncio和aiohttp包和logger生成日志文件

 BASE_URL = '#39;  

二、请求获取相应url

用BeautifulSoup进行解析获取所有的a标签,再按条件提取url,这里运用的set集合,用set集合对抓取的url进行去重

三、主函数创建对象和循环任务

在主函数运用到集合的并集和子集关系,利用这个关系进行循环创建任务和获取最新的url集合,再将最新的url集合并集到主集合中

四、保存为sitemap文件

按照百度的格式,对url进行格式处理

五、最后运行一下效果

看来sitemap的文件已经生成好了,接下来我们只要将sitemao文件上传到服务器根目录,然后在百度站长平台生成一下就可以了。有需要代码的,可以私信我

收藏
分享
海报
0 条评论
145
上一篇:冷冻螃蟹能吃吗有毒吗(吃冷冻螃蟹对人身体好吗) 下一篇:益母草孕初期能不能喝(孕初期误食了益母草会不会流产)

本站已关闭游客评论,请登录或者注册后再评论吧~

忘记密码?

图形验证码