仔细阅读PhishTank官方网站的开发者文档,了解API调用方法

1.注册账户,创建application并获取app_key

2.根据http://data.phishtank.com/data//online-valid.xml下载数据库导出文件.xml

于是便将问题转化为python解析xml大文件

Then  分别用xml.dom和xml.sax尝试去解析文档,均遇到相同问题:

xml.parsers.expat.ExpatError: not well-formed (invalid token): line 16519, column 83

xml.sax._exceptions.SAXParseException: online-valid.xml:16519:83: not well-formed (invalid token)

显然根据提示我们知道是xml文件中存在非法字符

接下来要解决的问题就是如何处理xml中的非法字符了(开启疯狂BG模式~~~)

几番B搜无果,最后在G搜到类似的内容:

#!/usr/bin/python

# -*- coding:utf-8 -*-

import string

import xml.dom.minidom

def parse_xml(file_path):

"""

Handle xml file with invalid character

[input] : path of the xml file

[output] : xml.dom.minidom.Document instance

"""

try:

xmldoc = xml.dom.minidom.parse(file_path)

except:

f = file(file_path)

s = f.read()

f.close()

ss = s.translate(None, string.printable)

s = s.translate(None, ss)

xmldoc = xml.dom.minidom.parseString(s)

return xmldoc

if __name__ == '__main__':

pass

以纯文本当时读取文件,然后用字符串来处理,就能得到非法字符完全剔除的的结果了

于是作业也就可以愉快的进行下去啦

版权声明:本文为博主原创文章,未经博主允许不得转载。

python钓鱼网站_Python+MySQL获取PhishTank的钓鱼网站列表作业笔记相关推荐

  1. python网络爬虫_Python网络爬虫——爬取视频网站源视频!

    原标题:Python网络爬虫--爬取视频网站源视频! 学习前提 1.了解python基础语法 2.了解re.selenium.BeautifulSoup.os.requests等python第三方库 ...

  2. python实战项目网站_python实战项目,搜索自己网站的关键词,使用代理并且模拟点击...

    前面,我们介绍了 python实战项目,获取指定网站关键词百度排名,为seo提供参考资料,那为了满足自己的虚荣心,而且听说点击可以提升网站关键词的排名.不过模拟点击,欺骗搜索引擎肯定知道咱们的 IP ...

  3. python tkinter输入框_python TKinter获取文本框内容的方法

    python TKinter获取文本框内容的方法 更新时间:2018年10月11日 11:36:08 作者:biubiuzzz 今天小编就为大家分享一篇python TKinter获取文本框内容的方法 ...

  4. python脚本根据cookies自动登录网站_Python爬虫如何使用Cookies登录网站

    最近搞到了一个学校教务系统可以查询全校成绩的账号,恰逢申请奖学金之际,就想用python写个脚本把年级里的绩点排名给爬下来,可是就在写登录的时候发现还是要处理验证码登录的问题,为了避免麻烦,就没使用类 ...

  5. python获得当前目录_python如何获取当前工程根目录

    假设工程根目录为 d:/Project/ 然后在 d:/Project/a/b/c/d/file.py 里使用 os.getcwd() 方法获取的是 d:/Project/a/b/c/d 现在我想获取 ...

  6. python关键词大全_Python 批量获取Baidu关键词的排名并入库

    1.[代码][Python]代码 #-*- coding: UTF-8 -*- #Python UTF-8 抓取百度关键词V1.0 #key.txt是抓取文件配置 #author PHPer.yang ...

  7. python 自动点赞_python实现在有漏洞的网站实现自动注册、登录、点赞

    必须有以下几个漏洞才能实现该功能: 1.验证码是假的,有图片,但是实际输入的验证码与图片无关:否则的话必须要用到python的图像识别的模块 2.注册时不需要邮箱验证,所以注册填写的邮箱地址是任意的, ...

  8. python实现新闻网站_Python+MySQL+HTML5技术实现一个新闻定制推送系统

    三.研究的基本思路和方法.技术路线.实验方案及可行性分析 (一)基本思路和方法 1.数据库的建立 确定模块与模块之间的关系,遵循数据库设计的原则,设计好数据库表.字段,并且要方便后期的维护. 2.系统 ...

  9. Python后端---使用Django+Mysql搭建一个简单的网站

    提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 文章目录 前言 一.项目搭建 前期准备 命令行创建项目和app Django项目配置文件说明 使用数据库 编写业务逻辑 配置url主路 ...

  10. python soup歌词_Python 爬虫获取网易云音乐歌手的歌词

    上一篇文章爬取了歌手的姓名和歌手的 id ,这篇文章根据上篇爬取的歌手 id 来直接下载对应歌手的歌词.这些我其实可以写成一个大项目,把这个大项目拆成小项目一来方便大家的理解,二来小项目都会了的话,拼 ...

最新文章

  1. PHP变量在内存中的存储方式
  2. SDN — 核心玩家与技术流派
  3. 啊,我南非时间上午10点看成了。。
  4. (原创)Linux下的磁盘碎片整理(2)
  5. 初识MQ--mq常见技术介绍
  6. 【动态规划】最小代价问题
  7. 【转】1.4 Magento2语法讲解
  8. 【GitHub】用Bash编写的 Linux 资源监视器
  9. 《ASCE1885的源码分析》の简单的进程封装类
  10. 【金融】【python】处理表格(*.xlsx)形式的期货数据
  11. 盒子浮动的重要性及对其它元素的影响
  12. POJ3070 Fibonacci【矩阵快速幂】
  13. Laplacian of Gaussian (LOG) 高斯拉普拉斯算子
  14. 如何在SqlServer中快速有条件删除海量数据
  15. 【发现趣味】要你命三千——老代码中的那些坑
  16. 10个超实用的小程序,你一定用得到!
  17. word中插入罗马数字并且设置为Times New Roman字体
  18. 【历史上的今天】11 月 8 日:计算机先驱诞生日;卷积神经网络 LeNet-5 问世;特斯拉发明遥控器
  19. Word目录:【同一篇文档设置多个独立目录】详细过程
  20. 工作中PUSH用到的统计命令

热门文章

  1. 3.Linux 高性能服务器编程 --- TCP 协议详解
  2. 1. crontab 简介
  3. 3. PSR-3 --- 日志接口
  4. 第6讲 Zend 整合数据库
  5. PADS 默认过孔太大,过孔提前设置
  6. Linux Windows 环境下 RabbitMQ 安装与基本配置
  7. C++/CLR 使用(VS2012,VS2013,VS2015)编写
  8. ASP.NET中登录功能的简单逻辑设计
  9. 一个火车上遇到的女孩所引发的联想
  10. Android widget开发有感