正则方式的自动小偷抓网程序

有一些瑕疵没时间细化,只是实现了效果,大家看一看这个正则该怎么写好:
URL:http://news.szhome.com/83642.html
内容:


代码如下:

object></div></div>
</div>

<div class="share"><div class="linkshare" style="right: 0">

这两个标记之间的代码。END标记的问题解决了,但是郁闷的是START截取的标记因为第二个DIV和第三个中间有换行,我无语了不知道怎么处理这个正则。
而且郁闷的是有多处有这种重复型标记,对正则不太熟悉,我的解决方法如下:

代码如下:

MatchCollection mc = Regex.Matches(ghoPage.Trim(), @"(?<=<div class=['""]txtmsg['""]>)[\s\S]*?(?=<div class=['""]share['""]><div class=)", RegexOptions.CultureInvariant | RegexOptions.IgnoreCase);
foreach (Match mm in mc)
{
sb.Append(mc[0].Value.Substring(1933, mc[0].Value.Length - 1933));
}

我算出截取出来多处两个FLASH广告DIV的长度是1933,然后处理字符串截取后得到我想要的文本,这样做的劣势就是万一该站改变了两个FLASH广告DIV的长度我获取的数据就不是完整的呢,有兴趣的研究下,看看换行的DIV正则问题怎么处理。
里面用到了自己写的一个BUTTON控件,可以在点击后禁止重复点击,然后就是一些判断,在思路上蛮不错,可以做到一直抓取,因为不经常用就没做成WINDOWS服务类型,这样的程序可以做成WINDOWS服务,把规则写在INI文件中,抓录的规则和正则也放在配置文件中,这样就能实现自动抓录。

很短的代码,对这种抓录有兴趣的朋友可以尝试下。下载

(0)

相关推荐

  • 正则方式的自动小偷抓网程序

    有一些瑕疵没时间细化,只是实现了效果,大家看一看这个正则该怎么写好: URL:http://news.szhome.com/83642.html 内容: 复制代码 代码如下: object></div></div> </div> <div class="share"><div class="linkshare" style="right: 0"> 这两个标记之间的代码.END标记的

  • 以文本方式上传二进制文件的PHP程序

    现在有的站点上传文件的时候会自动在文件前面加入Content-type: image/gif等头标,导致二进制文件被破坏.因此,我编写了以文本方式上传二进制文件的PHP程序. 一共两个文件:index.php,action.php.将要上传的文件的文件名改为test,与这两个文件放在一起,运行index.php,选读取,将读取的所有数据Copy,在远端服务器上面也运行这个程序,Paste到输入框中,选保存.二进制文件就被上传了. index.php -----------------------

  • Python抓包程序mitmproxy安装和使用过程图解

    一.介绍说明 mitmproxy是一个支持HTTP和HTTPS的抓包程序,有类似Fiddler.Charles的功能,只不过它是一个控制台的形式操作. mitmproxy还有两个关联组件.一个是mitmdump,它是mitmproxy的命令行接口,利用它我们可以对接Python脚本,用Python实现监听后的处理.另一个是mitmweb,它是一个Web程序,通过它我们可以清楚观察mitmproxy捕获的请求. mitmproxy的功能: 1.拦截HTTP和HTTPS请求和响应 2.保存HTTP会

  • 使用Aop的方式实现自动日志记录的方式详细介绍

    目录 34.使用Aop的方式实现自动日志记录 采用第一种方式: 1.第一步.定义一个注解: 2.第二步.编写一个切面 3.使用自定义注解 34.使用Aop的方式实现自动日志记录 自动日志记录的实现的两种方式: ①通过监听器去监听,当访问到具体的类方法,通过aop切面去获取访问的方法,然后将日志记录下来②通过拦截器,编写一个类去继承HandlerInterceptorAdapter,重写preHandle,postHandle,然后在里面进行日志记录,编写的类加到spring容器里 采用第一种方式

  • Windows和夜神模拟器上抓包程序mitmproxy的安装使用详解

    目录 windows 一.介绍说明 二.安装以及配置 三.mitmdump的使用 夜神模拟器 一.安装过程 1.准备 2.安装命令,在.mitmproxy目录下运行cmd 3.重命名+推送至手机 4.安装mitm证书到手机adb shell操作: 5.查看是否成功: ** windows ** 一.介绍说明 mitmproxy是一个支持HTTP和HTTPS的抓包程序,有类似Fiddler.Charles的功能,只不过它是一个控制台的形式操作. mitmproxy还有两个关联组件.一个是mitmd

  • 正则表达式创建方式的区别及编写简单的正则方式(js学习总结)

    在字面量方式中,我们//之间包起来的所有的内容都是元字符,有的具有特殊意义,大部分都是代表本身含义的普通的元字符 var name = 'wo'; var reg = /^\d+"+name+"\d+$/ 为了解决上述想在正则里面加上一个变量这样的需求,我们只能使用实例创建的方式了 var reg = new RegExp("^\\d+"+name+"\\d+$","g") 字面量方式和实例创建的方式在正则中的区别? 1.字面

  • Spring AOP拦截-三种方式实现自动代理详解

    这里的自动代理,我讲的是自动代理bean对象,其实就是在xml中让我们不用配置代理工厂,也就是不用配置class为org.springframework.aop.framework.ProxyFactoryBean的bean. 总结了一下自己目前所学的知识. 发现有三种方式实现自动代理 用Spring一个自动代理类DefaultAdvisorAutoProxyCreator: <bean class="org.springframework.aop.framework.autoproxy.

  • fiddler抓包小技巧之自动保存抓包数据的实现方法分析【可根据需求过滤】

    本文实例讲述了fiddler抓包小技巧之自动保存抓包数据的实现方法.分享给大家供大家参考,具体如下: 说起这个抓包啊,大家都不陌生.辣么,将自己抓获的数据保存下来进行数据分析就是个问题了.一般情况下,这个软件就是操作软件的,设置自动保存的话,只能依靠软件自身来设置.但是呢,这个fiddler不得不让我们又一次见识到了它的强大.废话不多说,咱们直接来看配置哈. 首先: 然后选择: 或者你可以直接按Ctrl+R这个组合键,就可以打开CustomRules.js这个文件了.当然如果有别的提示的话,你就

  • python实现自动打卡小程序

    本文实例为大家分享了python实现自动打卡小程序的具体代码,供大家参考,具体内容如下 """ 湖南大学疫情防控每日自动打卡程序v1.0 author: Liu time:2021/3/16 """ from selenium import webdriver from selenium.webdriver.chrome.options import Options from PIL import Image from bs4 import Be

  • Python实现自动玩贪吃蛇程序

    目录 实现效果 代码 实现效果 先看看效果 这比我手动的快多了,而且是单机的,自动玩没惹骂我,哈哈 ,多人游戏整个自动玩会被骂死~ 代码 没装软件的先安装一下软件,没装模块的安装一下pygame模块. pip install pygame 导入模块 import pygame,sys,time,random from pygame.locals import * 定义颜色变量 redColour = pygame.Color(255,0,0) blackColour = pygame.Color

随机推荐