MinerQueue.java 访问队列

MinerQueue.java 访问队列

package com.iteye.injavawetrust.miner;

import java.util.HashSet;
import java.util.LinkedList;
import java.util.Queue;
import java.util.Set;

import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;

/**
 * 访问队列
 * 
 * @author InJavaWeTrust
 *
 */
public class MinerQueue {
	
	private static final Log LOG = LogFactory.getLog(MinerQueue.class);
	
	/**
	 * URL队列 保证每一个URL只访问一次
	 */
	private static volatile Set<String> urlSet = new HashSet<String>();
	/**
	 * 待访问队列<br>
	 * 爬取页面线程从这里取数据
	 */
	private static volatile Queue<MinerUrl> unVisited = new LinkedList<MinerUrl>();
	/**
	 * 等待提取URL的分析页面队列<br>
	 * 解析页面线程从这里取数据
	 */
	private static volatile Queue<Html> waitingMisering = new LinkedList<Html>();
	/**
	 * 存储队列<br>
	 * 存储线程从这里取数据
	 */
	private static volatile Queue<Html> store = new LinkedList<Html>();
	/**
	 * 添加到存储队列
	 * @param html 爬取页面
	 */
	public synchronized static void addStore(Html html) {
		store.add(html);
	}
	/**
	 * 存储队列出队列
	 * @return 爬取页面
	 */
	public synchronized static Html storePoll() {
		return store.poll();
	}
	/**
	 * 存储队列是否为空 
	 * @return
	 */
	public static boolean storeIsEmpty() {
		return store.isEmpty();
	}
	/**
	 * 添加到等待提取URL的分析页面队列
	 * @param html 
	 */
	public synchronized static void addWaitingMisering(Html html) {
		waitingMisering.add(html);
	}
	/**
	 * 等待提取URL的分析页面出队列
	 * @return
	 */
	public synchronized static Html waitingMiseringPoll() {
		return waitingMisering.poll();
	}
	/**
	 * 等待提取URL的分析页面队列大小 
	 * @return
	 */
	public static int waitingMiseringSize() {
		return waitingMisering.size();
	}
	/**
	 * 等待提取URL的分析页面队列是否为空
	 * @return true-空;false-非空
	 * @return
	 */
	public static boolean waitingMiseringIsEmpty(){
		return waitingMisering.isEmpty();
	}
	/**
	 * 添加到URL队列
	 * @param url
	 */
	public synchronized static void addUrlSet(String url) {
		urlSet.add(url);
	}
	/**
	 * 获得URL队列大小
	 * @return
	 */
	public static int getUrlSetSize() {
		return urlSet.size();
	}
	/**
	 * 得到待访问队列
	 * @return
	 */
	public static Queue<MinerUrl> getUnVisited() {
		return unVisited;
	}
	/**
	 * 待访问出队列
	 * @return
	 */
	public synchronized static MinerUrl unVisitedPoll() {
		return unVisited.poll();
	}
	/**
	 * 添加到待访问队列,每个URL只访问一次
	 * @param html
	 */
	public synchronized static void addUnVisited(MinerUrl minerUrl) {
		if(null != minerUrl && !urlSet.contains(minerUrl.getUrl())) {
			LOG.info("添加到待访问队列[" + minerUrl.getUrl() + "] 当前第[" + minerUrl.getDepth() + "]层 当前线程[" + Thread.currentThread().getName() + "]");
			unVisited.add(minerUrl);
		}
	}
	/**
	 * 判断待访问的队列是否为空
	 * @return true-空;false-非空
	 */
	public static boolean unVisitedIsEmpty() {
		return unVisited.isEmpty();
	}
	/**
	 * 待访问的队列大小 
	 * @return
	 */
	public static int unVisitedSize(){
		return unVisited.size();
	}

}

 

返回列表

 

 

Fluent求解器——湍流参数的设置 Fluent湍流参数的介绍和设置。 阅读详情

相关推荐

yakit 验证码识别 进行webfuzzer

在渗透测试的过程中,我们可能需要对管理员密码进行枚举,或者密码喷洒的时候,遇到验证码就很烦。有没有自动化识别验证码的办法呢?有的,兄弟,有的。验证码的识别率很低,captcha-killer-modified对算术验证码识别正确率非常低,还会识别成乱七八糟的结果,这就非常麻烦。因为你不知道到底是验证码不对,还是密码不对。这是 ddddocr 识别率的问题,如果师傅们找到准确度更高的工具,完全可以替换上去。

Arkmornings的博客 1669

java的monitor线程的查看_MinerMonitorThread.java 监控线程

package com.iteye.injavawetrust.miner;import org.apache.commons.logging.Log;import org.apache.commons.logging.LogFactory;/*** 监控线程* @author Administrator**/public class MinerMonitorThread extends Thre...

weixin_35427210的博客 234

深入解析JESD204B Subclass 1中的SYSREF与LMFC同步机制

本文深入解析了JESD204B Subclass 1协议中的核心同步机制,重点阐述了SYSREF信号如何作为系统级参考,对齐所有设备内部的本地多帧时钟(LMFC),从而实现高速多通道数据采集系统中的确定性延迟。文章结合实战经验,详细说明了硬件设计、时序要点及软件配置流程,是解决多ADC芯片同步对齐问题的关键指南。

weixin_29271263的博客 399

MinerMonitorThread.java 监控线程

MinerMonitorThread.java 监控线程 package com.iteye.injavawetrust.miner; import org.apache.commons.logging.Log; import org.apache.commons.logging.LogFactory; /** * 监控线程 * @author Administrator *...

weixin_30751947的博客 132

图像质量评估:使用 SSIM 计算图像相似性

在图像处理领域,衡量两幅图像之间相似性的一种常见方法是使用结构相似性指数(SSIM)。SSIM 是一种全参考的图像质量评估指标,它不仅考虑了图像的亮度、对比度,还考虑了结构信息。在本文中,我们将介绍一个使用 Python 和 OpenCV 实现的 SSIM 计算脚本,并使用该脚本评估两幅图像的相似性。

hasque2019的博客 1154

深入解析BlueZ5与D-Bus:Linux蓝牙开发实战指南

本文深入解析BlueZ5与D-Bus在Linux蓝牙开发中的核心应用,提供从环境搭建到实战开发的完整指南。通过详细代码示例和调试技巧,帮助开发者掌握蓝牙协议栈与D-Bus接口的交互方法,实现高效蓝牙设备管理与GATT服务开发。

weixin_28292761的博客 452

MiseringThread.java 解析页面线程

MiseringThread.java 解析页面线程 http://injavawetrust.iteye.com package com.iteye.injavawetrust.miner; import java.util.Set; import org.apache.commons.logging.Log; import org.apache.commons.logging.Log...

16万+

国产SR8201F以太网PHY芯片调试避坑指南:从机贴失败到杜邦线救场的实战记录

本文详细介绍了国产SR8201F以太网PHY芯片的调试避坑指南,涵盖硬件设计、PCB布局、SMT贴片及软件驱动等关键环节。通过实战案例解析,帮助工程师解决MII/RMII接口配置、电源设计、信号完整性等典型问题,提升以太网通信稳定性与EMC性能。

c6d7e8f9g的博客 1217

Miner.java 爬虫启动类

Miner.java 爬虫启动类 package com.iteye.injavawetrust.miner; import java.util.concurrent.ThreadPoolExecutor; import org.apache.commons.logging.Log; import org.apache.commons.logging.LogFactory; /** *...

14万+

新手必看:如何用PhaGCN2和vConTACT2搞定宏病毒组注释(附避坑指南)

本文为宏病毒组研究新手提供了使用PhaGCN2和vConTACT2进行病毒注释的完整实战指南。内容涵盖从Conda环境配置、软件安装、参数解析到结果解读的全流程,并重点分享了整合双工具进行交叉验证的策略与常见报错解决方案,旨在帮助研究者高效、准确地完成病毒分类注释工作。

j2k3l4的博客 798

Hyperledger Fabric 网络搭建详解

写在前面:博主也是因为一些原因刚刚入坑区块链,我认为在我们入门新技术的时候,入门总是最困难的部分,只要入门了,后面学习起来就会越来越轻松,在网上找了很多文章,我觉得大多条理不是很清楚。本文章会详细介绍fabric(v1.0)环境部署,以及在搭建过程我遇到一些问题及解决方案,希望可以帮助到你们。 博主环境机器:VMware15 Ubuntu16.04 fabric(v1.0)环境部署一、必备软件安装1.ubuntu环境安装2.Go语言3.Docker安装4. Docker-Compose 安装二、Fa.

林中有神君 1万+

MinerHtmlThread.java 爬取页面线程

MinerHtmlThread.java 爬取页面线程 package com.iteye.injavawetrust.miner; import org.apache.commons.logging.Log; import org.apache.commons.logging.LogFactory; import org.jsoup.Connection; import org.j...

weixin_30682127的博客 76

openHarmony之AI Engine:万字讲解如何在应用、开发板上接入AI大模型调用

本文章介绍如何在 OpenHarmony 开发板上集成和部署各类 AI 大模型,实现终端直接聊天功能,并为语音助手、智能机器人等应用提供 AI 接口支持。

m0_67505153的博客 620

java jsoup 多线程爬虫Miner

java jsoup多线程爬虫Miner 需要配置项: 1、URL包含关键字。 2、存储方式:DB-数据库存储;FILE-文件存储。 3、爬取页面最大深度。 4、下载页面线程数。 5、分析页面线程数。 6、存储线程数。 ------------------------------------------- 程序中用到的表: CREATE TABLE `miner` ( ...

18万+

OV9734 DATASHEET,完整规格书

OV9734完整规格书,包括电气参数,尺寸规格,寄存器配置表等

大中型超市收银系统(可直接运行)

光步前台收银系统系统功能:商品销售、商品退货、挂单、收银员权限、会员销售、单品取消、整单取消、商品查询、脱机销售、脱机数据上传,基本资料下载,开钱箱、小票打印、收款结算,支持多币种付款方式(现金、储值卡、礼券、微信等),支持多种促销。运行环境:.net 4.0登陆信息用户名:1001 密码:123456内置商品信息,商品编码可输入00001000 - 00010000,测试效果相关功能键F5 结算 F9挂单 F11商品查询 F8退货 Insert单品取消 Del整单取消 F12开钱箱F2 会员 Ctrl+Z退出系统 Home 锁屏 相关源码待公开

StoreType.java 存储方式

StoreType.java 存储方式 package com.iteye.injavawetrust.miner; /** * 存储方式 * @author InJavaWeTrust * */ public enum StoreType { /** * DB-数据库存储 */ DB("DB"), /** * FILE-文件存储 */ FILE("FILE...

15万+

WINCC7.3破解文件

WINCC7.3硬件够破解文件,有需要的下载!WINCC7.3硬件够破解文件,有需要的下载!

MinerStoreThread.java 存储线程

MinerStoreThread.java 存储线程 package com.iteye.injavawetrust.miner; import java.util.HashMap; import java.util.Map; import org.apache.commons.logging.Log; import org.apache.commons.logging.LogFactor...

14万+

efm32 入门.pdf

本PDF共计22页,介绍的是操作驱动API,下载与否自己斟酌。

MinerUtil.java 爬虫工具类

MinerUtil.java 爬虫工具类 package com.iteye.injavawetrust.miner; import java.io.File; import java.io.FileNotFoundException; import java.io.FileOutputStream; import java.io.IOException; import java.io.Ou...

14万+

MinerThreadPool.java 线程池

MinerThreadPool.java 线程池 package com.iteye.injavawetrust.miner; import java.util.concurrent.BlockingQueue; import java.util.concurrent.LinkedBlockingQueue; import java.util.concurrent.ThreadPoolExe...

14万+

MinerUrl.java 解析页面后存储URL类

MinerUrl.java 解析页面后存储URL类 package com.iteye.injavawetrust.miner; /** * 解析页面后存储URL类 * @author InJavaWeTrust * */ public class MinerUrl { /** * 当前爬取URL */ private String url; /** * 当前爬取UR...

14万+

Html.java 存储页面信息类

Html.java 存储页面信息类 package com.iteye.injavawetrust.miner; /** * 存储页面信息类 * @author InJavaWeTrust * */ public class Html { /** * 页面URL */ private String url; /** * 页面信息 */ private St...

14万+

MinerConstanits.java 常量类

MinerConstanits.java 常量类 package com.iteye.injavawetrust.miner; /** * 常量类 * @author InJavaWeTrust * */ public class MinerConstanits { /** * 存储目录 */ public static String HTMLPATH = "E:\\I...

14万+

MinerBean.java 数据库表 miner bean

MinerBean.java 数据库表 miner bean package com.iteye.injavawetrust.miner; import java.util.Date; /** * 数据库表 miner bean * @author InJavaWeTrust * */ public class MinerBean { /** * uuid */ pri...

14万+

MinerConfig.java 爬取配置类

MinerConfig.java 爬取配置类 package com.iteye.injavawetrust.miner; import java.util.List; /** * 爬取配置类 * @author InJavaWeTrust * */ public class MinerConfig { /** * URL包含关键字 */ public List<...

14万+
上一篇: MinerMonitorThread.java 监控线程
下一篇: MinerStoreThread.java 存储线程
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值