自己写的Java抓图程序

公司里要写一个抓图的程序

其实和搜索引擎差不多的原理 下载分析网页遇到<a>标签继续模拟点击进去再分析该网页 遇到<img>就下载该图

难点:

1 URL去重 采用bloomfilter算法

2 序列化方式存储URL库

3 线程的合理切换

难度不大 大家看代码吧 没图形界面的 完全控制台 跨平台 呵呵

序列化工具类:

BloomFilter去重算法类

核心类

 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
要在Java中调用大华SDK的抓图功能,你需要进行以下步骤: 1. 确保你已经安装了大华SDK,并且在你的Java项目中引入了相关的jar文件。 2. 在Java代码中导入大华SDK的类和方法。 3. 初始化SDK,创建登录设备的实例,并登录到设备上。 4. 设置抓图参数,如图像保存路径、图片格式等。 5. 调用抓图的函数,例如`CLIENT_SnapPictureToFile`,并传递相应的参数。 6. 根据返回值判断抓图是否成功,如果成功则可以在指定的路径下找到抓取到的图片。 下面是一个示例代码片段,展示了如何调用大华SDK进行抓图: ```java import com.dahua.netsdk.*; public class DahuaSnapDemo { public static void main(String[] args) { // 初始化SDK HCNetSDK.INSTANCE.NET_DVR_Init(); // 登录设备 HCNetSDK.NET_DVR_USER_LOGIN_INFO loginInfo = new HCNetSDK.NET_DVR_USER_LOGIN_INFO(); HCNetSDK.NET_DVR_DEVICEINFO_V40 deviceInfo = new HCNetSDK.NET_DVR_DEVICEINFO_V40(); loginInfo.sDeviceAddress = "设备IP"; loginInfo.sUserName = "用户名"; loginInfo.sPassword = "密码"; loginInfo.wPort = 8000; loginInfo.bUseAsynLogin = false; int lUserID = HCNetSDK.INSTANCE.NET_DVR_Login_V40(loginInfo, deviceInfo); if (lUserID < 0) { System.out.println("登录失败"); return; } // 设置抓图参数 HCNetSDK.NET_DVR_JPEGPARA jpegPara = new HCNetSDK.NET_DVR_JPEGPARA(); jpegPara.wPicQuality = 2; // 图像质量,范围为0-6,0代表最好,6代表最差 jpegPara.wPicSize = 0; // 图片尺寸,0-表示最大分辨率 // 抓图 HCNetSDK.NET_DVR_PLATE_RESULT plateResult = new HCNetSDK.NET_DVR_PLATE_RESULT(); boolean bRet = HCNetSDK.INSTANCE.NET_DVR_CaptureJPEGPicture(lUserID, 1, jpegPara, "保存路径.jpg"); if (bRet) { System.out.println("抓图成功"); } else { System.out.println("抓图失败"); } // 登出设备 HCNetSDK.INSTANCE.NET_DVR_Logout(lUserID); // 释放SDK资源 HCNetSDK.INSTANCE.NET_DVR_Cleanup(); } } ``` 请根据你的实际情况修改示例代码中的设备IP、用户名、密码、保存路径等参数,并确保你已正确配置大华SDK的环境。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值