惠安 网站建设公司网站建设实训作业

diannao/2026/1/19 8:39:54/文章来源:
惠安 网站建设公司,网站建设实训作业,网站备案前置审批类型,学c++哪个线上机构好近期在做船仅仅识别方面的事情#xff0c;须要大量的正样本来训练adaboost分类器。于是到marinetraffic这个站点上下载船仅仅图片。写个爬虫来自己主动下载显然非常方便。 站点特点 在介绍爬虫之前首先了解一下marinetraffic这个站点的一些特点#xff1a; 1. 会定期检測爬虫… 近期在做船仅仅识别方面的事情须要大量的正样本来训练adaboost分类器。于是到marinetraffic这个站点上下载船仅仅图片。写个爬虫来自己主动下载显然非常方便。 站点特点 在介绍爬虫之前首先了解一下marinetraffic这个站点的一些特点 1. 会定期检測爬虫行为。假设觉得有爬虫大量下载图片。会把该连接增加黑名单后几天都没办法下载。 2. 船仅仅图片资源差异大。有的船仅仅有1000多张图有的船仅仅没有一张图我们须要的是非常多船仅仅的非常多张图。所以须要对下载的船仅仅按优先级排序。 3. 用来训练分类器的正样本要求检測对象的分辨率一样。而marinetraffic站点下载的图片能够设置下在的图片的宽度站点依据长宽比生成对应的高度。所以。不同图片高度不一样。须要自己后期处理。 解决方式 针对爬虫检測。设置一个随机等待时间10s左右。能够绕过站点爬虫行为检測。对船仅仅依照图片熟练排序先下载图片数量多的而且每一个船仅仅不用下载太多。保证图片的差异性。比如在下载的时候使用统一的宽度。后期处理从图片中抠出分辨率一样的船仅仅爬虫源代码 using System; using System.Collections.Generic; using System.Globalization; using System.IO; using System.Linq; using System.Net; using System.Runtime.Serialization.Formatters.Binary; using System.Text; using System.Text.RegularExpressions; using System.Threading; using System.Threading.Tasks;namespace 船仅仅图像爬虫 {class Program{static void download_all_shipid(Liststring shipid_list){try{WebClient MyWebClient new WebClient();MyWebClient.Headers[User-Agent] blah;MyWebClient.Credentials CredentialCache.DefaultCredentials;//获取或设置用于向Internet资源的请求进行身份验证的网络凭据;//Console.WriteLine(here1);//http://www.marinetraffic.com/en/photos/of/ships/shipid:281519///http://www.marinetraffic.com/en/ais/index/ships/all//http://www.marinetraffic.com/ais/index/ships/all/page:2/sort:COUNT_PHOTOS/direction:desc;for (int pageNum 1; pageNum 100; pageNum){Console.WriteLine(開始分析第 pageNum 张网页);MyWebClient.Credentials CredentialCache.DefaultCredentials;//获取或设置用于向Internet资源的请求进行身份验证的网络凭据;MyWebClient.Headers[User-Agent] blah;try{//Console.WriteLine(here0);Byte[] pageData MyWebClient.DownloadData(http://www.marinetraffic.com/en/ais/index/ships/all/page: pageNum /sort:COUNT_PHOTOS/direction:desc/per_page:50); //从指定站点下载数据//pageHtml Encoding.Default.GetString(pageData); //假设获取站点页面採用的是GB2312则使用这句; string pageHtml Encoding.UTF8.GetString(pageData); //假设获取站点页面採用的是UTF-8。则使用这句;//Console.WriteLine(pageHtml);//在控制台输入获取的内容;//Console.WriteLine(here1);int urlindex -1;string org_label shipid:;urlindex pageHtml.IndexOf(org_label, urlindex 1);while (urlindex ! -1){int endOfUrl pageHtml.IndexOf(/, urlindex org_label.Length);//Console.WriteLine(here2);string shipid pageHtml.Substring(urlindex org_label.Length, endOfUrl - urlindex - org_label.Length);if (!shipid_list.Contains(shipid)){Console.WriteLine(新增id: shipid);shipid_list.Add(shipid);}//Console.WriteLine(已有id: shipid);urlindex pageHtml.IndexOf(org_label, urlindex 1);}///保存网页//using (StreamWriter sw new StreamWriter(ouput.html))//将获取的内容写入文本//{// sw.Write(pageHtml);//}Console.WriteLine(完毕第 pageNum 页分析);}catch (WebException webEx){Console.WriteLine(webEx.Message.ToString());}//以下是一个随机数的方法保证10秒后再下载。以绕过违规检測。Console.Write(绕开站点爬虫行为检測中......);Random rd new Random();int time_sleep rd.Next() % 10 10;Thread.Sleep(time_sleep * 1000);Console.WriteLine();}Console.WriteLine(分析结束);//以下把list内容保存进文件,使用序列化的方法;string file C:\Users\dragonfive\Desktop\爬虫获得船仅仅图片\第三批\0_100page_shipid.txt;using (FileStream fsWriter new FileStream(file, FileMode.OpenOrCreate, FileAccess.Write)){//以下对stu进行序列化。BinaryFormatter bf new BinaryFormatter();bf.Serialize(fsWriter, shipid_list);}}catch (WebException webEx){Console.WriteLine(webEx.Message.ToString());}}/// summary/// 依据得到的ship_id获得该ship_id的全部图片;/// /summary/// param nameship_id/paramstatic void download_jpg(string ship_id){try{Console.WriteLine(開始下载shipid为ship_id的图片);WebClient MyWebClient new WebClient();MyWebClient.Credentials CredentialCache.DefaultCredentials;//获取或设置用于向Internet资源的请求进行身份验证的网络凭据MyWebClient.Headers[User-Agent] blah;//http://www.marinetraffic.com/en/photos/of/ships/shipid:281519///http://www.marinetraffic.com/en/photos/of/ships/shipid:371668/per_page:1000/page:1Byte[] pageData MyWebClient.DownloadData(http://www.marinetraffic.com/en/photos/of/ships/shipid: ship_id /per_page:100/page:1); //从指定站点下载数据//string pageHtml Encoding.Default.GetString(pageData); //假设获取站点页面採用的是GB2312。则使用这句 string pageHtml Encoding.UTF8.GetString(pageData); //假设获取站点页面採用的是UTF-8则使用这句//Console.WriteLine(pageHtml);//在控制台输入获取的内容Console.WriteLine(元网页已下载);//using (StreamWriter sw new StreamWriter(ouput.html))//将获取的内容写入文本//{// sw.Write(pageHtml);//}int urlindex -1;string org_label data-original;urlindex pageHtml.IndexOf(org_label, urlindex 1);int i 0;//Directory.CreateDirectory(./ );while (urlindex ! -1){int endOfUrl pageHtml.IndexOf(, urlindex org_label.Length);string url pageHtml.Substring(urlindex org_label.Length, endOfUrl - urlindex - org_label.Length);////以下是unicode编码转换为string的方式;//MatchCollection mc Regex.Matches(strName, \\u([\w]{2})([\w]{2}), RegexOptions.Compiled | RegexOptions.IgnoreCase);//byte[] bts new byte[2];//foreach (Match m in mc)//{// bts[0] (byte)int.Parse(m.Groups[2].Value, NumberStyles.HexNumber);// bts[1] (byte)int.Parse(m.Groups[1].Value, NumberStyles.HexNumber);// musicName Encoding.Unicode.GetString(bts);//}//Console.WriteLine(接下来下载的是: musicName);//以下是一个随机数的方法保证10秒后再下载。以绕过违规检測。Console.Write(绕过站点爬虫行为检測中......);Random rd new Random();int time_sleep rd.Next() % 10 10;Thread.Sleep(time_sleep * 1000);Console.WriteLine();try{//这是下载的命令Console.WriteLine(url);MyWebClient.Credentials CredentialCache.DefaultCredentials;//获取或设置用于向Internet资源的请求进行身份验证的网络凭据MyWebClient.Headers[User-Agent] blah;Byte[] jpgdata MyWebClient.DownloadData(url); //从指定网页下载数据;//把下载的内容保存在一个地方;using (FileStream fs new FileStream(C:\Users\dragonfive\Desktop\爬虫获得船仅仅图片\第三批\ ship_id _ i .jpg, FileMode.OpenOrCreate, FileAccess.Write)){fs.Write(jpgdata, 0, jpgdata.Length);}}catch (WebException webEx){Console.WriteLine(被捕获了吗?);Console.WriteLine(webEx.Message.ToString());}Console.WriteLine(成功下载第 (i ) 张图片);urlindex pageHtml.IndexOf(org_label, urlindex 1);}///保存网页//using (StreamWriter sw new StreamWriter(ouput.html))//将获取的内容写入文本//{// sw.Write(pageHtml);//}Console.WriteLine(*****************************************);Console.WriteLine(下载i张ship_id为ship_id的图片);Console.WriteLine(*****************************************);//Console.ReadLine(); //让控制台暂停,否则一闪而过了 }catch (WebException webEx){Console.WriteLine(webEx.Message.ToString());}}static void Main(string[] args){Liststring shipid_list new Liststring();//shipid_list.Add(371681);//临时高速产生图片用这个;download_all_shipid(shipid_list);//string file C:\Users\dragonfive\Desktop\爬虫获得船仅仅图片\第三批\0_100page_shipid.txt;//using (FileStream fsReader new FileStream(file, FileMode.Open, FileAccess.Read))//{// //以下进行反序列话;// BinaryFormatter bf new BinaryFormatter();// shipid_list (Liststring)bf.Deserialize(fsReader);// Console.WriteLine(成功加载 shipid_list.Count 个shipid);//}////371652 371668 371681 1252401 //shipid_list.Remove(371652);//shipid_list.Remove(371668);//shipid_list.Remove(371681);//shipid_list.Remove(1252401);////132264//shipid_list.Remove(371077);//shipid_list.Remove(132264);//shipid_list.Remove(224871);//shipid_list.Remove(279923);//shipid_list.Remove(369163);//shipid_list.Remove(266342);//shipid_list.Remove(371216);//shipid_list.Remove(368174);//shipid_list.Remove(369163);foreach (var ship_id in shipid_list){download_jpg(ship_id);}Console.ReadLine(); //让控制台暂停,否则一闪而过了 }} } 转载于:https://www.cnblogs.com/yutingliuyl/p/6941828.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/diannao/90397.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

怎么做网站的域名解析长沙新型网络营销

Xbox下载速度慢的问题通常是由于网络环境或微软服务器的问题。以下是一些提升Xbox下载速度的方法: 使用加速器:如果您的网络环境不稳定或存在其他问题,可以使用加速器来优化网络环境,从而提高下载速度。检查网络连接:…

廊坊网站建设方案seo分析报告

在本文中,我们将了解不同的事件,ASP.NET 应用程序的生命周期以浏览器向 Web 服务器(对于 ASP.NET 应用程序,通常为 IIS)发送请求为起点,直至将请求结果返回至浏览器结束。在这个过程中,首先我们…

做磁力链网站4a网站建设公司

学习目标: 计算机网络 1.掌握计算机网络的基本概念、基本原理和基本方法。 2.掌握计算机网络的体系结构和典型网络协议,了解典型网络设备的组成和特点,理解典型网络设备的工作原理。 3.能够运用计算机网络的基本概念、基本原理和基本方法进行…

织梦网站专题模板门户网站开发模板

目录 1、 结构体的内存对齐 1.1、对齐规则 1.2、练习1、练习2(演示对齐规则1、2、3、4) 2、为什么存在内存对齐 2.1、平台原因(移植原因) 2.2、性能原因 2.3、那么如何即满足对齐,又要节省空间呢? …

网站要怎么建立网页制作流程图片

我一直试图通过将包含我目录名称的log.i字符串值添加到数组中,然后使用数组适配器通过listView打印它们,来在listView中的目录中打印项目.但是,当我尝试运行该应用程序时,它将打印包含目录名称的日志,但不会在listView上打印任何内容.有什么帮助吗?这是我的代码&…

不忘初心网站建设网站设计方案谁写

1.前言 在9.0的系统产品定制化开发中,在进行一些定制开发中,对于一些app需要通过属性来控制禁止安装,比如adb install也不允许安装,所以就需要 熟悉adb install的安装流程,然后来禁用adb install安装功能,接下来分析下adb 下的安装流程 2.禁用adb install 安装app功能的…

网站开发qq头像做类似3d溜溜的网站

今天写uni-app的项目 设置uni-app扩展组件的样式 使用穿透/deep/ 发现小程序没有效果 h5有效果 //小程序无效 h5生效 /deep/ .uni-list-item .uni-list-item__container .uni-list-item__content .uni-list-item__content-title{color: #333333;font-size: 32upx;}加入一下代…

做优化网站能以量取胜么网站建设的流程视频

在我们以往和企业的沟通过程中,我们发现还是有相当多的一部分企业对于商业智能 BI 了解不多,或者对商业智能 BI 的理解仅停留在花花绿绿的可视化页面上,要么就是提出以下类似问题: 财务部门:BI 的财务分析指标也就是三…

手机网站开发成appwordpress怎么获取在线ip

您可以从项目中创建debian包.据我所知,你想创建一个用于分发的包,所以我建议你从你的项目中创建一个debian包.Here是Debian Packaging系统的介绍.在文章中,他们在某些时候描述了如何创建一个“规则”文件,它是构建过程的核心.以下是我通常用于Qt / KDE项目的示例:#!…

免费自助建站网站一览自助建网站网站关键词先后

安装下载地址:https://dev.mysql.com/downloads/mysql/​dev.mysql.com双击.msi文件开始安装,采用Custom安装方式。配置安装完毕弹出配置,或者安装路径下bin文件夹下MySQLInstanceConfig.exe运行可以进行配置。采用Detailed Configuration-》…

网站建设花费网站宣传的方式

之前做过电商网站倒计时的效果,今天在倒计时的基础上,把代码修改了一下,改为计时器效果,实现了以下功能: 1.点击“开始”后,按秒计时且“开始”文字变为“停止”; 2.点击“停止”,计…

做家具的网站有哪些建设企业学习网站

前端下载文件有哪些方式 在前端,最常见和最常用的文件下载方式是: 使用 标签的 download 属性: 创建一个 标签,并设置其 href 属性为文件的 URL,然后使用 download 属性指定下载的文件名。 这种方式简单直接&…

知乎 上海做网站的公司手机笑话网站源码

文章目录 一、Web应用,架构搭建二、web应用环境架构类三、web应用安全漏洞分类总结 一、Web应用,架构搭建 #网站搭建前置知识 域名,子域名,dns,http/https,证书等 二、web应用环境架构类 理解不同web应用组成角色功能架构 开发…

企业电子商务网站建设问题上海网站建站建设

最近在学习MySQL优化方面的知识。本文就数据类型和schema方面的优化进行介绍。1. 选择优化的数据类型MySQL支持的数据类型有很多,而如何选择出正确的数据类型,对于性能是至关重要的。以下几个原则能够帮助确定数据类型:更小的通常更好应尽可能…

宁波网站搭建定制非模板网站建设响应式网站工具

文章目录1、简单查询2、去除单列的重复结果查询3、去除多列的重复结果查询4、限制查询结果条数5、对查询结果排序(1)按照单个列的值进行排序(2)按照多个列的值进行排序6、带搜索条件查询(1)简单搜索条件查询…

外国网站手机dns学会网站建设三方协议

今天发现spring的异常格式没有跟着mvc的错误格式走,场景是用户权限的时候。查了一下原来是springsecurity定义了一组filter作用在了mvc上层,因此需要处理一下错误格式。 处理前错误返回信息如下: 由于使用了多语言,因此错误格式也…

建设信用卡申请进度查询官方网站phpcms wordpress

serialVersionUID简要介绍serialVersionUID是在Java序列化、反序列化对象时起作用的一个字段。Java的序列化机制是通过判断类的serialVersionUID来验证版本一致性的。在进行反序列化时,JVM会把传来的字节流中的serialVersionUID与本地相应实体类的serialVersionUID进…

视频网站logo怎么做深圳外贸公司集中在哪

背景 最近在学习操作系统,需要从零开始搭建系统,由于教程中给的虚拟机搭建的方式感觉还是过于重量级,因此研究了一下通过 qemu 模拟器,配合 grub 完成启动系统的搭建。 qemu 介绍 qemu 是一款十分优秀的系统模拟器,…

响应式网站用什么单位南通专业网站建设公司

错误和异常 至此,本教程还未深入介绍错误信息,但如果您尝试过本教程前文中的例子,应该已经看到过一些错误信息。错误可(至少)被分为两种:语法错误 和 异常。 8.1. 语法错误 语法错误又称解析错误&#x…

网站开发学院长春中医药大学

什么是computed属性 computed 属性用于声明计算属性,这些属性的值是基于其他响应式属性计算而来的,当依赖的响应式属性发生变化时,计算属性会自动重新计算。 与Vue.js 2相比,Vue.js 3的 computed 属性语法稍有变化,不…