自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(12)
  • 收藏
  • 关注

原创 爬虫笔记:编码格式正确,却出现乱码:gzip

有的时候用爬虫爬一个网页下来发现是乱码,上网站f12一看:<meta http-equiv="Content-Type" content="text/html" charset="utf-8">没错呀,是utf-8,然而爬下来,乱码惨不忍睹:这时候很有可能是网站开启了gzip压缩,只要在option里加上这一项:var options = { gzip: true, // ...其他}就可以顺利爬取下来了:而gzip是什么呢?gzip最初是用在UNIX系统

2020-07-03 12:49:07 853

原创 基于Express实现Web端云课堂习题上传功能

目录序言前期设计流程设计页面设计前端脚本习题上传脚本习题作答脚本习题数据查看脚本后端处理习题数据路由配置结语序言一个在线教育平台,习题上传功能是不可缺少的。这里基于Nodejs的Express框架,接入MongoDB数据库,实现习题的创建,作答和统计,并使用Echart展示数据。前期设计流程设计一个简单的习题功能,包括了教师的习题创建、学生的习题作答和教师的习题统计数据查看的三部分功能。页面设计教师课程页面的习题创建和查看入口教师创建新习题页面,包括选择题和填空题教师习题数据统计页

2020-06-24 23:31:55 305

原创 express框架实现文件上传、下载及推送(使用Websocket)

目录文件上传客户端上传文件:bootstrap-fileinput插件插件安装插件使用服务端接受文件:formidable模块文件列表推送客户端主动获取文件列表:fs模块服务端主动推送文件列表:socket.io模块文件下载、删除等操作文件上传功能往往是web应用非常重要的功能之一,使用express框架可以简单调用模块实现这一点。文件上传客户端上传文件:bootstrap-fileinput插件插件安装bootstrap-fileinput插件是基于jQuery和bootstrap的一款集合了文

2020-06-06 15:02:51 2061 2

原创 局域网登录功能实现:Express+jQuery+MongoDB

目录序言前期设计流程设计页面设计数据库存储格式前端脚本页面切换jQ请求和响应后端处理连接MongoDB数据库配置路由结语序言为了在树莓派上架设教学系统,这里以Express为框架,MongoDB作为数据库,利用了部分jQuery语法,实现了局域网内的注册、登录和找回密码服务。前期设计流程设计因为是局域网登录,没有使用邮箱验证等联网方式注册账户,而是通过班级的注册码进行验证;同时找回密码的方式是由管理员或教师申请账号安全码。页面设计设计上使用的简洁的浮窗式界面,实现上使用了一个html文件

2020-05-31 00:41:20 414 1

原创 C++STL之unordered_map用法简析,从造轮子到用轮子

目录简介造个Hash Table试试例:用取余运算作为Hash函数Unordered_map之用法声明方法简介unordered_map是C++11中加入的,以哈希表为索引方式的STL结构。与map不同,unordered_map寻找索引的值的理论时间复杂度仅为O(1),而依靠红黑树的map是O(logn)。要理解unordered_map的运作原理,首先来造个轮子,写个自己的哈希表寻址结构。Hash值是每个数据某个数据(比如是key)通过运算得到的某个数值,将该数据放进整个结构(比如数组)中以这个

2020-05-16 00:35:28 650

原创 从零开始的Node.js新闻爬虫实验项目(六)构建网站访问mysql查询数据

使用js查询mysql数据库中的数据首先引用了上一篇中的mysql.js脚本,用于访问数据库然后使用SQL语句查询数据select title,author,publish_date from fetches where title like '%投资%'即为从fetches表中找出title含有‘投资’的数据,并查询其title,author,publish_data数据。var m...

2020-04-20 17:38:34 367

原创 聊聊动态规划之BFS/DFS+剪枝——以滑雪问题为例

目录BFS + 剪枝使用BFS解决滑雪问题DFS + 剪枝使用DFS解决滑雪问题二者执行顺序的比较结论BFS + 剪枝首先让我们看看BFS是个什么样的运作原理:BFS是以广度为优先,也就是先把同级的每一个节点(例如2)先进行运算,同时将和它相邻的需要运算的节点入队,稍后再算(例如2对应的5、6),当同级的所有节点都运算完了的时候(2、3、4),由于队列先进先出的特点,自然轮到了下一级节点(...

2020-04-10 13:27:23 1321

原创 从零开始的Node.js新闻爬虫实验项目(四)东方财富网、网易新闻、Pixiv的爬取思路

这是计划的第3步有了前篇雪球网新闻的爬取代码,可以同样的爬取其他各类网站1)东方财富网1、一级页面在这里,选择信息较为集中,内容丰富的“右边部分”开始分析。观察到每一条消息均在各自的 li 项下的 a 中,于是主体部分非常好写 var item = $('.nlist', 'div').find('li').children('a') item.map(...

2020-04-06 17:45:22 1064

原创 从零开始的Node.js新闻爬虫实验项目(五)将爬虫爬取的数据存入Mysql中

Mysql是一个使用广泛,功能强大,性能开销低的数据库系统,这里用mysql取代文件直接存储数据,能提高存储和读取的效率。创建Mysql数据表安装过程略,这里创建了一个名为crawl的数据库,并创建了一个fetches表,并且统一了爬取信息类别的命名。CREATE TABLE `fetches` ( `id_fetches` int(11) NOT NULL AUTO_INCREME...

2020-04-05 15:09:00 412

原创 从零开始的Node.js新闻爬虫实验项目(三)一个示例网站的爬取

这是计划的第1~2步对比了各要求爬取的网站之后,先选择HTML结构简单的的雪球网进行尝试。1)分析HTML结构F12打开Chrome的控制台,可以看见其HTML源码;其结构比较简单:首先,观察到每则新闻都在各自的class=AnonymousHome_home__timeline__item_3vU下,各种信息都以文本方式存储在结构中。2)一级网址信息爬取先试试能否爬取标题,con...

2020-03-11 11:26:06 593

原创 从零开始的Node.js新闻爬虫实验项目(二)简析所需要的工具

这是计划的第0步,由于没有js基础,所以js语法的学习和模块的研究一并进行了Request模块安装在nodejs安装路径下的命令提示符中npm install request资料文档:https://github.com/request/request翻译:http://mrdede.com/?p=3147文档较长,并非完全阅读,留作参考使用,后同功能发送G...

2020-03-09 22:40:32 341

原创 从零开始的Node.js新闻爬虫实验项目(一)背景与计划

这是一个仅有C/C++基础的本科学生的web编程第一次实验项目;换言之,就是标题中的从零开始了。话不多说,直接开始:要求1、选取新闻网站3-5个(新浪新闻、网易新闻、雪球经济、东方财富、腾讯体育、虎扑体育)2、针对不同网站的新闻页面进行分析,爬取出编码、标题、作者、时间、关键词、摘要、内容、来源等结构化信息3、存储在数据库中4、建立网站对爬取内容的分项全文搜索5、给出所查关键词的事...

2020-03-09 15:31:38 557

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除