怎样抓取网页数据(百度对sitemap的生成规则,看看百度站长平台有什么格式要求)
优采云 发布时间: 2021-12-30 17:25怎样抓取网页数据(百度对sitemap的生成规则,看看百度站长平台有什么格式要求)
作为seoer,在优化一个网站的时候,肯定离不开百度站长平台的监控,而且百度站长平台上有一个站点地图文件,可以批量提交网站网址到百度站长平台。
我们来看看百度的站点地图生成规则,看看百度对站点地图有哪些格式要求。这里可以看到百度支持两种格式,一种是txt格式,一种是xml格式,今天是xml格式。生成网站的站点地图文件:
这次用python生成站点地图,首先需要抓取整个站点的url,然后将整个站点的url保存在一个xml文件中。这里我使用异步加载请求来获取站点范围的 URL。异步方法具有节省请求时间和速度快的优点。当网站没有反爬虫措施时,使用异步加载是更好的选择。
好了,思路有了,接下来我们开始写代码:
一、设置爬取的网站
这次使用BeautifulSoup进行分析,导入asyncio和aiohttp包和logger生成日志文件
BASE_URL = 'https://www.danmoln.com'
二、请求获取对应的url
使用BeautifulSoup解析得到所有的a标签,然后根据条件提取url,这里使用的集合集合,使用集合集合对爬取的url进行去重
三、main函数创建对象和循环任务
在main函数中,利用了集合的并集和子集关系,利用这个关系循环创建任务,获取最新的url集合,然后将最新的url集合合并到主集合中
四、另存为站点地图文件
按照百度的格式格式化URL
五、最后运行效果
好像sitemap文件已经生成了,接下来我们只需要把sitemao文件上传到服务器根目录,然后在百度站长平台上生成就可以了。需要码可以私信我