徐奥雯利用python爬取宁安农场学校官网文章 简述|宁安农场徐奥雯XUAOWEN
2021-03-20 20:18 作者:徐奥雯XuAowen_利贝塔斯 | 我要投稿
首先我们应该查看我们学校网站的robots.txt 是怎样的,他是否不希望被机器人访问。
不出所料,学校网站没有此文件,那么我们可以开始工作了。(nancxx.com)


先来观察网站结构 在我们需要爬取的内容右键点击-检查

我们可以看出每个网页都有相同的规律可寻。这会方便我们的工作。

不难发现 每一篇文章的网址的一部分具有递增规律,其他部分保持不变。

我们应当找出大概的递增的区间,并在后期使用循环语句

导入需要用的库


在刚才的截图中我们看到下边的返回码为200,这表示一切正常,如果你不明白这些数字的含义,请参考下图

现在注意力回到网页,我们看到标题的class属性的内容很独特,估计应该是独一无二的,我们可以以此为唯一的拾取标识。
同时我们也应该注意到正文的class属性的内容也很独特。

现在我么们首先测试爬取标题 如图很成功

然后
继续增加代码 成功爬取了一篇作文(代码见后)
但是还有很多其他问题

因为我们把文章保存至txt文件中,txt文件名不支持特殊符号,而很多文章的标题带有符号,同时我们又是利用它来定义txt文件名的 所以出现了错误。

我们可以用切片和正则表达式来解决这一问题。
另外文章正文也存在类似问题 我们可以替换问题字符如图所示。
然后我们把代码套入for循环。

问题还没有结束,循环到第二次就又报错了

原来162网址也是没有内容的

再次改进代码 如图所示 运行之后短时间爬取了2000余篇文章

如图 爬取的文章

爬取的文章

此外有些文章是带有图片的 我们还可以进一步改进代码。
宁安农场徐奥雯原创