- 00. 这里整理了最全的爬虫框架(Java + Python)
有一只柴犬
爬虫系列爬虫javapython
目录1、前言2、什么是网络爬虫3、常见的爬虫框架3.1、java框架3.1.1、WebMagic3.1.2、Jsoup3.1.3、HttpClient3.1.4、Crawler4j3.1.5、HtmlUnit3.1.6、Selenium3.2、Python框架3.2.1、Scrapy3.2.2、BeautifulSoup+Requests3.2.3、Selenium3.2.4、PyQuery3.2
- 2024年Java爬虫利器:Jsoup详细介绍与用法_java jsoup(1)
2401_84562143
程序员java爬虫开发语言
.method(Connection.Method.GET).execute();DocumentloginDoc=loginForm.parse();Elementform=loginDoc.select(“form”).first();//填充表单字段form.select(“input[name=username]”).val(“username”);form.select(“input[n
- Java爬虫开发:Jsoup库在图片URL提取中的实战应用
小白学大数据
pythonjava爬虫开发语言测试工具前端javascript
在当今的互联网时代,数据的获取和处理变得尤为重要。对于网站内容的自动化抓取,爬虫技术扮演着不可或缺的角色。Java作为一种广泛使用的编程语言,拥有丰富的库支持网络爬虫的开发。其中,Jsoup库以其简洁、高效的特点,成为处理HTML内容和提取数据的优选工具。本文将详细介绍如何使用Jsoup库开发Java爬虫,以实现图片URL的提取。Jsoup库简介Jsoup是一个用于解析HTML文档的Java库,它
- 不通过修改代码可以调用不同方法的三种方式
山间清泉1111
Stringpath=JsoupDemo1.class.getClassLoader().getResource("com/mujiachao/xml/dtd/student.xml").getPath();Documentdocument=Jsoup.parse(newFile(path),"utf-8");Elementsname=document.getElementsByTag("name
- webmagic高级:(四)
沙漏如心
本篇呢,本来打算写一下,pipeline里面的ResultItems对象,但是呢,简单看了一下,里面东西不是很多。所以呢,我这次说,这个selectable对象,也就是节点对象,就想jsoup里面element对象.不过呢,这个对象内容较多所以,我们就只看一下他的接口,而不去看他的很多个实现类了!selectable前面呢,我们说过webmagic呢,是一个集成了jquery选择器,css选择器,
- 大数据相关技术
ssttIsme
1数据获取方式爬虫:分布式爬虫java的jsoup(操作方式基于选择器),pythoon,八爪鱼日志收集:log4j(可以控制级别和放置的位置)(可以输出数据到flume)(可以输出到mq),flume(分布式日志收集系统)(收集用户ip,访问了哪个方法)(例如三大运营商的日志分析能根据用户71个字段,拿到谁在什么时间什么地点用什么手机什么浏览器哪个版本访问了什么网站访问了多长时间网站内容是什么)
- 2021最新版 ElasticSearch 7.6.1 教程详解 爬虫jsoup+es模拟京东搜索(狂神说)
Super_Song_
中间件elasticsearch搜索引擎javanosql
文章目录一、ElasticSearch简介1.了解创始人DougCutting2.Lucene简介3.ElasticSearch简介4.ElasticSearch和Solr的区别5.了解ELK二、软件安装1.ElasticSearch2.ElasticSearchHead3.Kibana三、ElasticSearch使用详解1.ES核心概念文档索引倒排索引ik分词器2.命令模式的使用Rest风格说
- JAVA爬虫三种方法
weixin_40298650
文章目录前言一、JDK二、HttpClient三、Jsoup总结前言记录JAVA爬虫三种方式一、JDK使用JDK自带的URLConnection实现网络爬虫。publicvoidtestGet()throwsException{//1.确定要访问/爬取的URLURLurl=newURL("https://blog.csdn.net/weixin_40298650/article/details/1
- [含完整代码]Java实现导出word文档【超详细】
Java患者·
javawordc#
前言:个人博客:www.wdcdbd.comjava实现导出word文档是项目中很常见的操作,但又是很棘手的操作,这篇文章,带大家从0到1超详细的完整的操作一遍java实现导出word文档。一定要认真看这篇文章,超详细。话不多说直接上代码。〇、实现导出word文档前准备使用的依赖:org.jsoupjsoup1.11.3cn.hutoolhutool-all5.8.16org.apache.com
- 如何使用工具获取动态HTML页面内容
CodingCode
如何使用工具获取动态HTML页面内容我们知道jsoup可以用来获取HTML页面并且分析读取页面内容。例如:importjava.io.IOException;importorg.jsoup.Jsoup;importorg.jsoup.nodes.Document;importorg.jsoup.nodes.Element;importorg.jsoup.select.Elements;public
- Jsoup使用示例
大灰狼zz
查看网页源码和对应标签使用QQ浏览器搜狗引擎搜索奥迪image.png在浏览器中按F12可以查看网页源码image.png点击源码左上角的按钮image.png再把鼠标移动到坐标任意位置,在源代码中会高亮对应的标签image.png网页爬虫示例在gradle中引入Jsoupdependencies{//爬虫api'org.jsoup:jsoup:1.11.3'相关代码@Overridepublic
- ElasticSearch-ElasticSearch实战-仿京东商城搜索(高亮)
666-LBJ-666
ESelasticsearch全文检索springboot
注:此为笔者学习狂神说ElasticSearch的实战笔记,其中包含个人的笔记和理解,仅做学习笔记之用,更多详细资讯请出门左拐B站:狂神说!!!七、ElasticSearch实战仿京东商城搜索(高亮)1、工程创建(springboot)目录结构2、基本编码①导入依赖1.8UTF-8UTF-82.3.7.RELEASEorg.jsoupjsoup1.10.2com.alibabafastjson1.
- 实践:读取html文本提取相应内容按照格式导出到excel中
酱学编程
htmlexcel
最近在做一个需求,需要将html文本中的内容提取出来,然后导出到excel里面,实现交代情景,html文本中存在许多标签,且很乱,因此需要之间将标签里面的文本提取出来,再进行处理。............Stringtext=Jsoup.parse(content).wholeText();//解析字符串并将数据添加到表格String[]dataArray=text.split("\n");//创
- Java 数据抓取
踏遍三十六岸
java项目中高效开发java后端数据
大家好我是苏麟,今天聊聊数据抓取.大家合理使用注意,爬虫技术不能滥用,干万不要给别人的系统造成压力、不要侵犯他人权益!数据抓取实质上就是java程序模拟浏览器进行目标网站的访问,无论是请求目标服务器的接口还是请求目标网页内容,都是要在java程序中对数据进行解析。最简单的抓取方式有httpclient请求目标服务器接口,jsoup请求目标页面内容,把请求的数据进行解析然后入库。另外要做好爬取的实时
- 2018-01-05
大黄2333
主要工作选取首页中的超链接,利用布隆容器去重,将最终需要的网页选取出来,用前几节课学习的方法将需要的信息抓取出来并且存放到数据库中。具体工作1、初始页面在myeclipse中输入选取的首页2、用jsoup模拟浏览器代码如下:网页的头请求用jsoup模拟浏览器3、初始化三个容器作用:1、布隆容器去重,检测网页的唯一性。2、list容器存放中间页面。3、存放最终页面。代码如下:publicstatic
- 高效 Java 程序员不能错过的 10+ 个最佳库!
Java架构学习者
举些例子,最常用的官方库有java.lang、java.util、java.io、java.sql、java.net等;而至于目前最流行的第三方库,就有Junit、SLF4J、GoogleGuava、XStream、JSoup、Gson、JodaTime等,可以说是不胜枚举。我到底需要用到哪些Java库呢?某些库再热门也好,你的项目也未必适用。然而即便如此,大部分项目实际上都还是需要进行单元测试、
- 使用Jenkins执行TestNg+Selenium+Jsoup自动化测试和生成ExtentReport测试报告
penngo
java持续交付jenkinsselenium运维自动化测试
文章目录1、Jenkins1.1下载安装jenkins1.2安装HTMLPublisher插件2、使用Jenkins创建流水线任务2.1创建流水线2.2构建2.3测试报告上一篇已经介绍Maven整合TestNG、ExtentReports、Selenium、Jsoup测试项目工程的建立,本文介绍使用Jenkins执行自动化测试代码。1、Jenkins1.1下载安装jenkins下载jenkins:
- go实现生成html文件和html文件浏览服务
penngo
Gogolanghtmlgin
文章目录本文章是为了解决使用Jenkins执行TestNg+Selenium+Jsoup自动化测试和生成ExtentReport测试报告生成的测试报告,只能在jenkins里面访问,为了方便项目组内所有人员都能查看测试报,可以在jenkins构建时,把测试报告的html推送到其它http服务,再让该http服务提供访问。为了实现上边的功能,需要编写两个HTTP接口:1、upload接口,接收发送的
- Java爬虫批量爬取图片
zxy199288
javajava爬虫python
Java爬取图片现在开始学习爬虫,对于爬虫的入门来说,图片相对来说是比较容易获取的,因为大部分图片都不是敏感数据,所以不会遇到什么反爬措施,对于入门爬虫来说是比较合适的。使用技术:Java基础知识、HttpClient4.x、Jsoup学习目标:下载静态资源图片。爬取思路对于这种图片的获取,其实本质上就是就是文件的下载(HttpClient)。但是因为不只是获取一张图片,所以还会有一个页面解析的处
- JAVA爬虫案例——JSOUP爬取图片并使用v-viewer实现图片预览
北溟溟
JAVAjava爬虫
前言网络爬虫是大数据时代收集数据的一种有效手段,合理合法的运用技术手段获取网络数据,实现数据的再利用也是程序员的一项重要技能。本节我们使用java环境下的jsoup实现网络数据的爬取,主要是图片数据的异步爬取,并实现网络图片的下载及图片的预览功能,预览功能使用具有丰富功能的v-viewer实现。正文引入爬虫pom工具包org.apache.httpcomponentshttpclient4.5.6
- SpringBoot-Jsoup做java简单-爬虫
番茄好困
爬虫java
使用SpringBoot+Jsoup做java简单’爬虫’Jsoup简介Jsoup是一款java的Html解析器,可以直接解析Html。针对网页提供了相关Api,可以通过Dom、Css、Jquery等属性来操作和解析网页。主要类介绍:Jsoup类提供了连接,清理和解析HTML文档的方法Document获取HTML文档Element获取、操作HTML节点实战(爬京东网页数据)1.创建Maven项目2
- java中用jsoup抓取网页源码,并批量下载图片
平凡的华仔
java爬虫工具jsoupjsoup网页解析爬虫批量下载图片
一、导入jsoup的核心jar包jsoup-xxx.jarjar包下载:jsoup-1.8.2.jar中文API:http://www.open-open.com/jsoup/parsing-a-document.htm二、java中用jsoup抓取网页源码,并批量下载图片packagecom.dgh.test;importjava.io.File;importjava.io.FileOutput
- Jsoup - 【Java爬虫】- 批量下载指定网站图片
QX_Java_Learner
Javajava
简介Jsoup是一款Java的HTML解析器,可直接解析某个URL地址、HTML文本内容。它提供了一套非常省力的API,可通过DOM,CSS以及类似于JQuery的操作方法来取出和操作数据。Jsoup对多线程、连接池、代理等等的支持并不是很好,所以一般把Jsoup仅仅作为HTML解析工具使用。功能从一个URL、文件或字符串中解析HTML使用DOM或CSS选择器来查找、取出数据可操作HTML元素、属
- WebMagic爬虫Demo
我是一颗小虎牙_
前言WebMagic介绍Java的可伸缩Web搜寻器框架。官方网站:http://webmagic.io/一款爬虫框架是WebMagic,其底层使用的HttpClient和Jsoup。WebMagic项目代码分为核心和扩展两部分。核心部分(webmagic-core)是一个精简的、模块化的爬虫实现,而扩展部分则包括一些便利的、实用性的功能。WebMagic的设计目标是尽量的模块化,并体现爬虫的功能
- pom.xml文件配置
来之前不会起名字
Javajavamaven
1.中央仓库查看jar文件2.添加项目依赖com.mysqlmysql-connector-j8.1.0org.jsoupjsoup1.16.1org.projectlomboklombok1.18.28provided3.配置本地项目jdk修改idea项目模块,jdk依赖修改maven项目的pom.xml配置文件4.0.0org.examplem11.0-SNAPSHOT1717UTF-8com
- 【Java】使用Java实现爬虫
Do_GH
Javajava爬虫
文章目录使用Java实现爬虫一、HttpClient实现模拟HTTP访问1.1HttpClient1.2引入依赖1.3创建简单的请求操作1.3.1创建实例1.3.2Jsoup应用1.4爬取过程中可能出现的问题1.4.1JS异步加载问题1.4.2反爬技术的影响1.5爬取需要登录的页面1.5.1在header中直接携带Cookie1.5.2模拟登录自动获取Cookie二、HtmlUtil实现JS异步加
- 如何检查项目中用到的License
xxzblog
javajava
检查项目中用到的Licenseorg.jsoupjsoup1.11.3org.apache.commonscommons-lang33.12.0执行命令生成依赖报告./mvnwproject-info-reports:dependencies直接上代码packagejsbxyyx;importorg.apache.commons.lang3.StringUtils;importorg.jsoup.
- 【Java 代码实例 7】jsoup解析html
哪 吒
Java基础教程系列javajqueryhtml
Java学习路线:搬砖工逆袭Java架构师简介:Java领域优质创作者、CSDN哪吒公众号作者✌、Java架构师奋斗者扫描主页左侧二维码,加入群聊,一起学习、一起进步欢迎点赞收藏⭐留言一、Jsoup简介Jsoup是一款Java的HTML解析器,可直接解析某个URL地址、HTML文本内容。它提供了一套非常省力的API,可通过DOM,CSS以及类似于jQuery的操作方法来取出和操作数据。二、Jsou
- 【数据爬取】Jsoup爬取数据的使用
script-pro
java爬虫开发语言javaJsoup
目录1.Jsoup介绍2.导入依赖3.爬虫示例1.Jsoup介绍Jsoup是一个用于解析、提取和操作HTML文档的Java库。它提供了简单且易于使用的API,能够轻松地从HTML页面中提取数据。2.导入依赖org.jsoupjsoup1.14.33.爬虫示例示范了一个爬取微博网数据的示例:importorg.jsoup.Jsoup;importorg.jsoup.nodes.Document;im
- 【Java-随笔】常用依赖
SUNxRUN
java开发语言
Jsouphttps://mvnrepository.com/artifact/org.jsoup/jsouporg.jsoupjsoup1.15.3HttpClienthttps://mvnrepository.com/artifact/org.apache.httpcomponents/httpclientorg.apache.httpcomponentshttpclient4.5.13Myb
- Algorithm
香水浓
javaAlgorithm
冒泡排序
public static void sort(Integer[] param) {
for (int i = param.length - 1; i > 0; i--) {
for (int j = 0; j < i; j++) {
int current = param[j];
int next = param[j + 1];
- mongoDB 复杂查询表达式
开窍的石头
mongodb
1:count
Pg: db.user.find().count();
统计多少条数据
2:不等于$ne
Pg: db.user.find({_id:{$ne:3}},{name:1,sex:1,_id:0});
查询id不等于3的数据。
3:大于$gt $gte(大于等于)
&n
- Jboss Java heap space异常解决方法, jboss OutOfMemoryError : PermGen space
0624chenhong
jvmjboss
转自
http://blog.csdn.net/zou274/article/details/5552630
解决办法:
window->preferences->java->installed jres->edit jre
把default vm arguments 的参数设为-Xms64m -Xmx512m
----------------
- 文件上传 下载 解析 相对路径
不懂事的小屁孩
文件上传
有点坑吧,弄这么一个简单的东西弄了一天多,身边还有大神指导着,网上各种百度着。
下面总结一下遇到的问题:
文件上传,在页面上传的时候,不要想着去操作绝对路径,浏览器会对客户端的信息进行保护,避免用户信息收到攻击。
在上传图片,或者文件时,使用form表单来操作。
前台通过form表单传输一个流到后台,而不是ajax传递参数到后台,代码如下:
<form action=&
- 怎么实现qq空间批量点赞
换个号韩国红果果
qq
纯粹为了好玩!!
逻辑很简单
1 打开浏览器console;输入以下代码。
先上添加赞的代码
var tools={};
//添加所有赞
function init(){
document.body.scrollTop=10000;
setTimeout(function(){document.body.scrollTop=0;},2000);//加
- 判断是否为中文
灵静志远
中文
方法一:
public class Zhidao {
public static void main(String args[]) {
String s = "sdf灭礌 kjl d{';\fdsjlk是";
int n=0;
for(int i=0; i<s.length(); i++) {
n = (int)s.charAt(i);
if((
- 一个电话面试后总结
a-john
面试
今天,接了一个电话面试,对于还是初学者的我来说,紧张了半天。
面试的问题分了层次,对于一类问题,由简到难。自己觉得回答不好的地方作了一下总结:
在谈到集合类的时候,举几个常用的集合类,想都没想,直接说了list,map。
然后对list和map分别举几个类型:
list方面:ArrayList,LinkedList。在谈到他们的区别时,愣住了
- MSSQL中Escape转义的使用
aijuans
MSSQL
IF OBJECT_ID('tempdb..#ABC') is not null
drop table tempdb..#ABC
create table #ABC
(
PATHNAME NVARCHAR(50)
)
insert into #ABC
SELECT N'/ABCDEFGHI'
UNION ALL SELECT N'/ABCDGAFGASASSDFA'
UNION ALL
- 一个简单的存储过程
asialee
mysql存储过程构造数据批量插入
今天要批量的生成一批测试数据,其中中间有部分数据是变化的,本来想写个程序来生成的,后来想到存储过程就可以搞定,所以随手写了一个,记录在此:
DELIMITER $$
DROP PROCEDURE IF EXISTS inse
- annot convert from HomeFragment_1 to Fragment
百合不是茶
android导包错误
创建了几个类继承Fragment, 需要将创建的类存储在ArrayList<Fragment>中; 出现不能将new 出来的对象放到队列中,原因很简单;
创建类时引入包是:import android.app.Fragment;
创建队列和对象时使用的包是:import android.support.v4.ap
- Weblogic10两种修改端口的方法
bijian1013
weblogic端口号配置管理config.xml
一.进入控制台进行修改 1.进入控制台: http://127.0.0.1:7001/console 2.展开左边树菜单 域结构->环境->服务器-->点击AdminServer(管理) &
- mysql 操作指令
征客丶
mysql
一、连接mysql
进入 mysql 的安装目录;
$ bin/mysql -p [host IP 如果是登录本地的mysql 可以不写 -p 直接 -u] -u [userName] -p
输入密码,回车,接连;
二、权限操作[如果你很了解mysql数据库后,你可以直接去修改系统表,然后用 mysql> flush privileges; 指令让权限生效]
1、赋权
mys
- 【Hive一】Hive入门
bit1129
hive
Hive安装与配置
Hive的运行需要依赖于Hadoop,因此需要首先安装Hadoop2.5.2,并且Hive的启动前需要首先启动Hadoop。
Hive安装和配置的步骤
1. 从如下地址下载Hive0.14.0
http://mirror.bit.edu.cn/apache/hive/
2.解压hive,在系统变
- ajax 三种提交请求的方法
BlueSkator
Ajaxjqery
1、ajax 提交请求
$.ajax({
type:"post",
url : "${ctx}/front/Hotel/getAllHotelByAjax.do",
dataType : "json",
success : function(result) {
try {
for(v
- mongodb开发环境下的搭建入门
braveCS
运维
linux下安装mongodb
1)官网下载mongodb-linux-x86_64-rhel62-3.0.4.gz
2)linux 解压
gzip -d mongodb-linux-x86_64-rhel62-3.0.4.gz;
mv mongodb-linux-x86_64-rhel62-3.0.4 mongodb-linux-x86_64-rhel62-
- 编程之美-最短摘要的生成
bylijinnan
java数据结构算法编程之美
import java.util.HashMap;
import java.util.Map;
import java.util.Map.Entry;
public class ShortestAbstract {
/**
* 编程之美 最短摘要的生成
* 扫描过程始终保持一个[pBegin,pEnd]的range,初始化确保[pBegin,pEnd]的ran
- json数据解析及typeof
chengxuyuancsdn
jstypeofjson解析
// json格式
var people='{"authors": [{"firstName": "AAA","lastName": "BBB"},'
+' {"firstName": "CCC&
- 流程系统设计的层次和目标
comsci
设计模式数据结构sql框架脚本
流程系统设计的层次和目标
 
- RMAN List和report 命令
daizj
oraclelistreportrman
LIST 命令
使用RMAN LIST 命令显示有关资料档案库中记录的备份集、代理副本和映像副本的
信息。使用此命令可列出:
• RMAN 资料档案库中状态不是AVAILABLE 的备份和副本
• 可用的且可以用于还原操作的数据文件备份和副本
• 备份集和副本,其中包含指定数据文件列表或指定表空间的备份
• 包含指定名称或范围的所有归档日志备份的备份集和副本
• 由标记、完成时间、可
- 二叉树:红黑树
dieslrae
二叉树
红黑树是一种自平衡的二叉树,它的查找,插入,删除操作时间复杂度皆为O(logN),不会出现普通二叉搜索树在最差情况时时间复杂度会变为O(N)的问题.
红黑树必须遵循红黑规则,规则如下
1、每个节点不是红就是黑。 2、根总是黑的 &
- C语言homework3,7个小题目的代码
dcj3sjt126com
c
1、打印100以内的所有奇数。
# include <stdio.h>
int main(void)
{
int i;
for (i=1; i<=100; i++)
{
if (i%2 != 0)
printf("%d ", i);
}
return 0;
}
2、从键盘上输入10个整数,
- 自定义按钮, 图片在上, 文字在下, 居中显示
dcj3sjt126com
自定义
#import <UIKit/UIKit.h>
@interface MyButton : UIButton
-(void)setFrame:(CGRect)frame ImageName:(NSString*)imageName Target:(id)target Action:(SEL)action Title:(NSString*)title Font:(CGFloa
- MySQL查询语句练习题,测试足够用了
flyvszhb
sqlmysql
http://blog.sina.com.cn/s/blog_767d65530101861c.html
1.创建student和score表
CREATE TABLE student (
id INT(10) NOT NULL UNIQUE PRIMARY KEY ,
name VARCHAR
- 转:MyBatis Generator 详解
happyqing
mybatis
MyBatis Generator 详解
http://blog.csdn.net/isea533/article/details/42102297
MyBatis Generator详解
http://git.oschina.net/free/Mybatis_Utils/blob/master/MybatisGeneator/MybatisGeneator.
- 让程序员少走弯路的14个忠告
jingjing0907
工作计划学习
无论是谁,在刚进入某个领域之时,有再大的雄心壮志也敌不过眼前的迷茫:不知道应该怎么做,不知道应该做什么。下面是一名软件开发人员所学到的经验,希望能对大家有所帮助
1.不要害怕在工作中学习。
只要有电脑,就可以通过电子阅读器阅读报纸和大多数书籍。如果你只是做好自己的本职工作以及分配的任务,那是学不到很多东西的。如果你盲目地要求更多的工作,也是不可能提升自己的。放
- nginx和NetScaler区别
流浪鱼
nginx
NetScaler是一个完整的包含操作系统和应用交付功能的产品,Nginx并不包含操作系统,在处理连接方面,需要依赖于操作系统,所以在并发连接数方面和防DoS攻击方面,Nginx不具备优势。
2.易用性方面差别也比较大。Nginx对管理员的水平要求比较高,参数比较多,不确定性给运营带来隐患。在NetScaler常见的配置如健康检查,HA等,在Nginx上的配置的实现相对复杂。
3.策略灵活度方
- 第11章 动画效果(下)
onestopweb
动画
index.html
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/
- FAQ - SAP BW BO roadmap
blueoxygen
BOBW
http://www.sdn.sap.com/irj/boc/business-objects-for-sap-faq
Besides, I care that how to integrate tightly.
By the way, for BW consultants, please just focus on Query Designer which i
- 关于java堆内存溢出的几种情况
tomcat_oracle
javajvmjdkthread
【情况一】:
java.lang.OutOfMemoryError: Java heap space:这种是java堆内存不够,一个原因是真不够,另一个原因是程序中有死循环; 如果是java堆内存不够的话,可以通过调整JVM下面的配置来解决: <jvm-arg>-Xms3062m</jvm-arg> <jvm-arg>-Xmx
- Manifest.permission_group权限组
阿尔萨斯
Permission
结构
继承关系
public static final class Manifest.permission_group extends Object
java.lang.Object
android. Manifest.permission_group 常量
ACCOUNTS 直接通过统计管理器访问管理的统计
COST_MONEY可以用来让用户花钱但不需要通过与他们直接牵涉的权限
D