算法 自动采集列表(算法自动采集列表页里面的广告页挨个点击才可以)
优采云 发布时间: 2022-03-30 10:06算法 自动采集列表(算法自动采集列表页里面的广告页挨个点击才可以)
算法自动采集列表页列表页里面经常会出现很多的广告等文字。这些文字怎么在图片上显示在数据库中排好顺序,挨个点击才可以呢?最简单的方法是利用一个广告采集程序,它自动连接图片和广告列表页,然后采集图片中的广告页列表,并把不想要的广告页标记为stop。这样就能得到不想要的广告页列表,随后只要只要取出stop中的广告页即可。
这种广告采集效率很低,程序非常麻烦。接下来的办法比较简单,现在以我在旅游度假时会用到的adsense插件来做演示。打开adsense浏览器插件商店,安装adsense。依次输入网站:/,就会看到一个带有广告的广告栏。我们在浏览这个网站时,会点击这些广告,再次刷新该网站,看广告栏中是否有新的广告项目。这时候,在标记广告的小框上,会有两个选项:stop和nomoredirectclicks。
点击stop。接下来点击nomoredirectclicks,然后选择下面我们想要的广告列表页。然后点击进入广告列表页,连续点击这几个广告就能得到想要的广告页列表。这时候,一共有5个广告页:点击stop这两个广告就可以将你的广告页标记stop。接下来的操作比较简单,仅需要让网站更改,并且刷新广告栏即可得到原本的广告页列表。
方法就是通过定时器和cookie相关js,完成获取的过程。有些人可能会问,这种方法太麻烦,要等广告完全显示才能得到。其实并不需要特别久,只需要广告稍微少一点,比如广告栏的广告数量少于10个,基本上。
3、5秒就可以获取到广告页列表,就像原来的广告网站一样。但是,如果广告网站广告有几千个或者更多,通过这种方法就会出现显示广告之后,再也找不到显示广告的地方。这是一个让人头疼的问题。解决方法还是通过定时器和cookie来完成广告的定时采集。首先,需要一个表示表单的cookie。这个cookie可以在我们的浏览器插件商店中找到,也可以在后台自己写js获取。下面我就简单介绍一下从插件商店找到的cookie。我就用最简单的useragent代码来获取。
functionlsj(jsflag){if(jsflag){console.log('cookiefailed');}settimeout(lsj,1,100
0);}else{if(!settimeout){console.log('cookiefailed');}settimeout(lsj,2000,200
0);}如果你是从自己写的脚本中获取,可以借助一些工具来用es6定时采集更多广告,比如我们可以使用javascript实现定时连接服务器获取服务器用户数据。连接后转化为json格式。
functiongetjw(jsflag){lsj(jsflag)}console.log('getjsfailed');settimeout(getjw,100
0)