下载网络内容到文件或变量【官方澳门新永利下载】

现行反革命一度是网络时代了,完全单机而无需联网的软件非常少了。有些时候,用 AHK
写个本子也是亟需去网络获取数据的。

跨入MongoDB的大门

MongoDB 是二个依照布满式文件存款和储蓄的数据库。由 C++ 语言编写。意在为 WEB
应用提供可扩展的高质量数据存款和储蓄施工方案。

MongoDB
是四个在乎关全面据库和非关周详据库之间的产品,是非关周到据库个中功能最丰富,最像关周密据库的。

官方澳门新永利下载 1

MongoDB-logo


多少时候大家要求把一个网页、图片、音频等公事下载到本地,再做继续管理。在另外编制程序语言可能就相比费心了,例如先下载互连网内容到八个字符串变量,然后成立一个文书,将字符串写入,再保存文件。而
AHK 内置的 UrlDownloadToFile 命令正是为那个场景量身定做的。

什么是MongoDB?

MongoDB 是由C++语言编写的,是一个基于布满式文件存款和储蓄的开源数据库系统。

在高负荷的意况下,增加越多的节点,能够确定保障服务器质量。

MongoDB 意在为WEB应用提供可扩大的高质量数据存款和储蓄技术方案。

MongoDB
将数据存储为一个文书档案,数据结构由键值(key=>value)对组合。MongoDB
文书档案类似于 JSON 对象。字段值能够包括其余文档,数组及文档数组。

官方澳门新永利下载 2

MongoDB-数据存款和储蓄以键值对的花样,文书档案类似JSON对象


UrlDownloadToFile, URL, Filename

驷不比舌特点

  • MongoDB 的提供了四个面向文档存款和储蓄,操作起来相比简单和轻松。
  • 你能够在MongoDB记录中设置任何性质的目录(如:FirstName =
    “Sameer”,Address=”8 Gandhi Road”)来落到实处越来越快的排序。
  • 你能够透过地点恐怕互联网创造数量镜像,那使得MongoDB有更加强的扩大性。
  • 借使负载的充实(须要更加多存款和储蓄空间和越来越强的拍卖本事),特能够布满在计算机互连网中的其余节点上那正是所谓的分片。
  • Mongo帮助增添的询问表明式。查询指令使用JSON方式的标记,可随机查询文书档案中内嵌的靶子及数组。
  • MongDB使用update()
    命令能够兑现替换完毕的文书档案(数据)或许部分点名的多寡字段。
  • MongoDB中的Map/reduce 主要用来对数据开展批量甩卖和聚合操作。
  • Map和Reduce。Map函数调用emit(key,value)遍历会集中负有的记录,将key和value传给Reduce函数举办拍卖。
  • Map函数和Reduce函数是采纳Javascript编写,并能够通过db.runCommand大概mapreduce命令来实行MapReduce操作。
  • GridFs是MongoDB中贰个松开作用,能够用于贮存多量小文件。
  • MongoDB允许在服务器端实行脚本,可以用Javascript编写有些函数,直接在服务端实践,也足以把函数的定义存款和储蓄在服务端,后一次直接调用就能够。
  • MongoDB援助各类编程语言:Ruby、Python、java、C++、PHP、C#等二种语言。
  • MongoDB安装简便。

能够看看,这么些命令的用法特别轻易,第二个参数是文件的互连网地址,第贰个参数是文件的地头地址。若是第3个参数不是完整路径,文件会被下载到当前剧本的做事目录,平时景况正是本子本人的目录。

设置好MongoDB后,供给手动创立数量目录

MongoDB将数据目录存款和储蓄在 db
目录下。不过那么些数目目录不会主动成立,大家在安装达成后须要创造它。请小心,数据目录应当放在根目录下((如:
C: 或者 D: 等 )。
自己的MongoDB安装在D盘,所以,未来跻身D盘成立贰个mgdata目录里创立db目录。

官方澳门新永利下载 3

创立MongoDB数据目录


举例说本身想下载 AHK 官方网站的 Logo 图片到 C:test.png,就足以这么:

命令行下运维MongoDB服务器

为了从命令提醒符下运营MongoDB服务器,你不可能不从MongoDB目录的bin目录中实行mongod.exe文件。

 mongod.exe --dbpath d:mgDatadb

要是实施成功,会输出如下消息:

官方澳门新永利下载 4

执行MongoDB.png

UrlDownloadToFile, http://ahkscript.org/logos/ahk_logo.png, C:test.png

将MongoDB服务作为Windows服务运作

历次要求动用MongoDB的时候还要像上边施行,是还是不是很劳苦,所以将MongoDB服务作为windows服务运转就好了。
请小心,你必需有管理权限才具运作上边包车型地铁一声令下。推行以下命令将MongoDB服务器作为Windows服务运转:

mongod.exe --logpath "D:mgDatadbConfmongodb.log" --logappend --dbpath "D:mgDatadb" --serviceName "Mongodb" --serviceDisplayName "Mongodb1" --install

下表为mongodb运营的参数说明:

官方澳门新永利下载 5

参数表达

是还是不是非常简单。除了 HTTP,UrlDownloadToFile 还补助 HTTPS 和 FTP 左券。

MongoDB后台保管 Shell

假如你要求步向MongoDB后台管理,你需求先开发mongodb装目录的下的bin目录,然后实践mongo.exe文件,MongoDB
Shell是MongoDB自带的交互式Javascript
shell,用来对MongoDB举行操作和保管的交互式情形。

当您步向mongoDB后台后,它默许会链接到 test 文书档案(数据库):

官方澳门新永利下载 6

mongo

向图上这么 运行退步,很正规,因为mongodb的劳务还尚未运维

官方澳门新永利下载 7

启动mongo服务

为了不用老是去手动运维它,化解办法

mongod.exe --install --logpath=D:mgDatadbConfmongo.log --dbpath=D:mgDatadb

成就上述的步子,再来实践下:

官方澳门新永利下载 8

success

由于它是二个JavaScript shell,您能够运作一些简约的算术运算:

 > 2 + 2
 4
 >

db 命令用于查看当前操作的文书档案(数据库):

> db
test
>

但有个别情形,大家并没有要求将网络内容保留到文件里,而是直接运用,例如直接呈今后控件里。纵然也得以先写到文件再读出来,但那样做不仅仅见怪不怪,有额外的花费,还须求思量共用偶尔文件、有时文件没被去除等主题素材。

MongoDB基本操作命令

体现全部数据库

$ show dbs

官方澳门新永利下载 9

show dbs

布置一些简约的记录并物色它:

    > db.user.insert({"username":"Twitch"})
    WriteResult({ "nInserted" : 1 })
    > db.user.find()
    { "_id" : ObjectId("57ae875df4724806d2473ed7"), "username" : "Twitch" }

此时此刻操作的数据库(文书档案)为:test,在该库中创制三个表(类型):user
将json格式数据:{“username”:”Twitch”}插入个中,并搜索出来

官方澳门新永利下载 10

插入和搜索命令

插入多条数据命令

$ db.user.insertMany([{"username":"Bob","age":18},{"username":"Job","sex":"man"}])

官方澳门新永利下载 11

insertMany

查询数据格式化

$ db.user.find().pretty()

官方澳门新永利下载 12

pretty

修改更新操作命令

$ db.user.update({username:"Bob"},{$set:{age:20}})

官方澳门新永利下载 13

update

首先个作为标准,$set:{}作为修改内容
也足以用update() 插入一个新的字段数据,

$ db.user.update({username:"Job"},{$set:{age:16}},true)

官方澳门新永利下载 14

updateOne

删除数据

$ db.user.remove({username:"Job"});

官方澳门新永利下载 15

remove.png

翻看当前 MongoDB的本子

$ db.version()
 > db.version()
 3.2.8
 >

收获当前会集的称谓

$ db.getCollectionNames()
> db.getCollectionNames()
[ "user" ] 
>

获得当前数据库的名字

$ db.getName()
> db.getName()
test
>

AHK 并不曾命令能够一贯将网络内容下载到字符串变量,但能够运用 COM 对象
WinHttp.WinHttpRequest.5.1,官方文书档案中有叁个例子,用起来倒亦不是很劳碌。

Node.js 安装express 框架

Express 是一个简练而灵活的 node.js Web应用框架,
提供了一名目多数有力性格帮忙您成立各个 Web 应用,和增多的 HTTP 工具。

选用 Express 能够便捷地搭建三个总体意义的网址。
Express 框架大旨本性:

  • 能够安装中间件来响应 HTTP 央浼。
  • 概念了路由表用于实践不一的 HTTP 央浼动作。
  • 能够透过向模板传递参数来动态渲染 HTML 页面。

whr := ComObjCreate("WinHttp.WinHttpRequest.5.1"); Open() 的第三个参数代表同步或者异步,现在不用过多关注,true 就可以了; 以后我们会仔细了解同步和异步whr.Open("GET", "https://autohotkey.com/download/1.1/version.txt", true)whr.Send()whr.WaitForResponse()version := whr.ResponseTextMsgBox, % version

安装Express

设置 Express 并将其保存到依附列表中:

   $ npm install express --save

如上命令会将 Express 框架安装在当前目录的 node_modules 目录中,
node_modules 目录下会自动创制 express
目录。以下多少个至关主要的模块是急需与 express 框架一齐安装的:

  • body-parser – node.js 中间件,用于拍卖 JSON, Raw, Text 和 U奥迪Q5L
    编码的数量。
  • cookie-parser
    那正是三个剖析Cookie的工具。通过req.cookies能够取到传过来的cookie,并把它们转成对象。
  • multer – node.js 中间件,用于拍卖
    enctype=”multipart/form-data”(设置表单的MIME编码)的表单数据。
    $ npm install body-parser --save
    $ npm install cookie-parser --save
    $ npm install multer --save

发表评论

电子邮件地址不会被公开。 必填项已用*标注