爬取目前在官网可查询的CISP证书编号以及有效期并入库

也算是暴力破解,burp使用grep功能呢也可以实现。

下面是python的代码

#coding=utf-8
import requests
import sys
from bs4 import BeautifulSoup
#demourl='http://www.itsec.gov.cn/export/sites/itsec/person/peregester/CNITSEC2012CISE01098/'
counter = 1
for i in range(2000,2017):
for t in ['CISE','CISA','CISO','CISM','CISE-E','CISO-E','CISM-E','CISA-E','CISP-Auditor']:
for j in range(10000):
SNum = "CNITSEC"+str(i)+t+""+str(j).zfill(4)
url = "http://www.itsec.gov.cn/export/sites/itsec/person/peregester/%s/"% SNum
print counter , SNum ,' Checking .........'
try:
res = requests.get(url)
res.encoding = 'utf-8'
soup = BeautifulSoup(res.text,'html.parser')
clength = res.headers['content-length'] if 200<= int(res.status_code) <=210 :
itsecid = soup.select('.detail_title')[0].text.encode('gb2312','ignore').strip()
starttime = soup.select('.tdm')[0].text.encode('utf-8','ignore').strip().replace("\n","").replace("  ","")
endtime = soup.select('.tdm')[1].text.encode('utf-8','ignore').strip().replace("\n","").replace("  ","")
username = soup.select('.tdm')[2].text.encode('utf-8','ignore').strip()
authlevel = soup.select('.tdm')[3].text.encode('utf-8','ignore').strip()
print clength
print itsecid
print starttime
print endtime
print username
print authlevel
with open('cispall.txt','a') as f:
f.writelines("%s%s%s%s%s %s\n"%(itsecid,starttime,endtime,username,authlevel,clength))
else:
print SNum ,'Non-existent ########'
counter+=1
except:
info=sys.exc_info()
print 'except error'
print info[0],":",info[1]

过程:

根据分割特点可入库存储

BS4爬虫实例应用-CISP的更多相关文章

  1. Python爬虫实例:爬取猫眼电影——破解字体反爬

    字体反爬 字体反爬也就是自定义字体反爬,通过调用自定义的字体文件来渲染网页中的文字,而网页中的文字不再是文字,而是相应的字体编码,通过复制或者简单的采集是无法采集到编码后的文字内容的. 现在貌似不少网 ...

  2. Python爬虫实例:爬取豆瓣Top250

    入门第一个爬虫一般都是爬这个,实在是太简单.用了 requests 和 bs4 库. 1.检查网页元素,提取所需要的信息并保存.这个用 bs4 就可以,前面的文章中已经有详细的用法阐述. 2.找到下一 ...

  3. python爬虫实例——爬取歌单

    学习自<<从零开始学python网络爬虫>> 爬取酷狗歌单,保存入csv文件 直接上源代码:(含注释) import requests #用于请求网页获取网页数据 from b ...

  4. Python 多进程爬虫实例

    Python  多进程爬虫实例 import json import re import time from multiprocessing import Pool import requests f ...

  5. python3.4学习笔记(十三) 网络爬虫实例代码,使用pyspider抓取多牛投资吧里面的文章信息,抓取政府网新闻内容

    python3.4学习笔记(十三) 网络爬虫实例代码,使用pyspider抓取多牛投资吧里面的文章信息PySpider:一个国人编写的强大的网络爬虫系统并带有强大的WebUI,采用Python语言编写 ...

  6. python3.4学习笔记(十四) 网络爬虫实例代码,抓取新浪爱彩双色球开奖数据实例

    python3.4学习笔记(十四) 网络爬虫实例代码,抓取新浪爱彩双色球开奖数据实例 新浪爱彩双色球开奖数据URL:http://zst.aicai.com/ssq/openInfo/ 最终输出结果格 ...

  7. Python 爬虫实例

    下面是我写的一个简单爬虫实例 1.定义函数读取html网页的源代码 2.从源代码通过正则表达式挑选出自己需要获取的内容 3.序列中的htm依次写到d盘 #!/usr/bin/python import ...

  8. Python爬虫实例:爬取B站《工作细胞》短评——异步加载信息的爬取

    很多网页的信息都是通过异步加载的,本文就举例讨论下此类网页的抓取. <工作细胞>最近比较火,bilibili 上目前的短评已经有17000多条. 先看分析下页面 右边 li 标签中的就是短 ...

  9. Python 利用Python编写简单网络爬虫实例3

    利用Python编写简单网络爬虫实例3 by:授客 QQ:1033553122 实验环境 python版本:3.3.5(2.7下报错 实验目的 获取目标网站“http://bbs.51testing. ...

随机推荐

  1. 修改http请求文件为本地文件的一种方法:hook InternetReadFile 和 HttpOpenRequest

    今天没事的时候学了一下easyhook来hook本进程API,确实很简单就能hook.然后想到这个问题:替换webbrowser请求的文件为本地文件.有什么用就不说了,都懂.因为没有用API写过htt ...

  2. find: ‘/run/user/1000/gvfs’: Permission denied

    linux使用命令   find / -name ***  查找文件的时候会遇到以下报错 /gvfs’: Permission denied 其实这个目录是空的,查不查都没关系.所以,以下解决方式比较 ...

  3. IP 地址 与 DNS

    IP地址转化 192.168.10.1 十进制,点分十进制地址 32位二进制数字序列,四段,八位 十进制与二进制转换00000000 = 000000001 = 2 * 0 = 100000010 = ...

  4. String s;和String s=null;和String s="a";有什么区别?

    String s;和String s=null;和String s="a";有什么区别?   针对这三种情况,使用out.println(s);的时候,第一个会出现异常,第二个会输 ...

  5. 编码转换(UTF8->GBK)

    WCHAR woutstr[]; ]; , value, -, NULL, ); MultiByteToWideChar(CP_UTF8, , value, -, woutstr, len); len ...

  6. linux命令日志处理

    刘超 2018/10/8 10:32:43 zcat bi_www_activity_2018100*.log.gz |grep --color '多方电话h5_' | awk -F'|' '{pri ...

  7. 19_java之List和Set

    01List接口的特点 A:List接口的特点: a:它是一个元素存取有序的集合. 例如,存元素的顺序是11.22.33.那么集合中,元素的存储就是按照11.22.33的顺序完成的). b:它是一 ...

  8. ce

    一,什么是epel 如果既想获得 RHEL 的高质量.高性能.高可靠性,又需要方便易用(关键是免费)的软件包更新功能,那么 Fedora Project 推出的 EPEL(Extra Packages ...

  9. Python学习日记(一)——IDLE、运算符

    环境:win8.1+python2.7.8 一.名词解释: 1.IDLE:经常编程的同学相信对集成开发环境(Integrated Development Environment,IDE)应该非常熟悉了 ...

  10. Swift 动画片段

    UIView.transitionWithView( self.WeatherDetailsView, duration: 0.7, options: .TransitionCrossDissolve ...