web课爬虫小结

WEB课 Node.js 爬虫项目:

前言

作为一个大一新生,在我对于程序员还报有一种奇妙的幻想时,web编程深深的给我上了一课。在零基础,没讲过Javascript的基本语法之前,我们需要完成简单的爬虫。一开始知道期中作业是我的内心想法是阿巴阿巴阿巴。但随着ddl的不断靠近,我也不得不开始着手这浩大的工程。

代码

这一部分是定义域名,限制我们爬的网站

这部分则是定义网页中我们所需要的内容。以网易新闻为例

这两部分分别是题目与主题、作者等我们所需要的信息就需要从上文代码来帮助我们获取。

至于网站本身https://www.163.com/news/article/G8PF3RRU000189FH.html我们通过仔细观察不难发现,在主网站之后,是他所在的分类news、article等,之后的字母、数字的组合的话,若是数字可以用d{}来表示,而我选择使用w{}来表达字母与数字的组合。

这部分是为了引入爬虫而用到的库,都需要自行安装。询问是由后得知,

cheerio是nodejs的抓取页面模块,为服务器特别定制的,快速、灵活、实施的jQuery核心实现。

iconv-lite实现代码编译转换模块,项目中的主要的功能是将无论什么编译标准的代码转化为标准的utf-8(其实现在的网站基本都是统一的utf-8,这个的作用我个人感觉不是很大)。

date-utils是一个日期工具类,方便我们对爬取时间的操作。

这块的作用是为爬虫申请请求头,防止被浏览器屏蔽。

这之后的函数我已经完全不知道他们的作用了。🙂

自身经历

我自身的经历十分曲折。一开始,我抱着试一试的心情,尝试就着老师发的代码依葫芦画瓢,但发现MySQL出现问题,经多次调试不果后,我选择重新下载。至于代码的改写,更是令人头疼。在数千行的代码之中寻找我所需要的几个字母,我在电脑屏幕前盯了足有数个小时才终于发现了之前的差错,完成了代码。

但我逐渐发现,这才是冰山一角。

不知为何,我的电脑无法成功运行7.02的代码,能够打开网页却无法进行搜索任务,又捣鼓了一个晚上,我最后放弃了,选择在室友的电脑上完成那最后的作业。

结语

或许是上课错过的内容太多了,也有一部分原因是我实在太拖拉,平时也没有多加强训练,这次的期中作业对于我来说是一个不小的难关,也在实验过程中遇到一些无法跨过的难关。上述内容也可能存在纰漏,望指正。

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值