python错误捕获例程_终于清楚python爬虫入门例程

PyQt5是基于Digia公司强大的图形程式框架Qt5的python接口,由一组python模块构成。PyQt5本身拥有超过620个类和6000函数及方法。在可以运行于多个平台。PyQt5拥有双重协议,自由开发者可以选择免费的GPL版本,仅当你准备将PyQt用于商业活动时,你必须为此交付commercial许可费用。以下是小编为你整理的python爬虫入门例程

QtCore模块涵盖了包的核心的非GUI功能,此模块被用于处理程序中涉及到的 time、文件、目录、数据类型、文本流、链接、mime、线程或进程等对象。

QtGui模块涵盖多种基本图形功能的类; 包括但不限于:窗口集、事件处理、2D图形、基本的图像和界面 和字体文本。

QtWidgets模块包含了一整套UI元素组件,用于建立符合系统风格的classic界面,非常方便,可以在安装时选择是否使用此功能。

QtMultimedia模块包含了一套类库,该类库被用于处理多媒体事件,通过调用API接口访问摄像头、语音设备、收发消息(radio functionality)等。

QtBluetooth模块包含了处理蓝牙活动的类库,它的功能包括:扫描设备、连接、交互等行为。

QtNetwork模块包含用于网络编程的类库,这组类程序通过提供便捷的TCP/IP 及 UDP 的 c/s 程式码集合,使得基于Qt的网络编程更容易。

import smtplib

import smtplib

from email.mime.text import MIMEText

to_list=["xxx@xxxxx"]

host="smtp.xxx"

username="xxx"

password="xxx"

postfix="xxx"

def send_plain_mail(send_list,title,content):

me=""

msg = MIMEText(content,_subtype='plain',_charset='gb2312')

msg['Subject'] = title

msg['From'] = me

msg['To'] = ";".join(to_list)

try:

server = smtplib.SMTP()

server.connect(host)

server.login(username,password)

server.sendmail(me, to_list, msg.as_string())

server.close()

return True

except Exception, e:

print str(e)

return False

if __name__ == '__main__':

email_title = "title::"

email_content = "content::"

if send_plain_mail(to_list,email_title,email_content):

print "send success !"

else:

print "send failed !"

云基础设施

这年头,不支持云平台,不支持海量数据,不支持动态伸缩,根本不敢说自己是做大数据的,顶多也就敢跟人说是做商业智能(BI)。

云平台分为私有云和公有云。私有云平台如日中天的 OpenStack,就是 Python 写的。曾经的追赶者 CloudStack,在刚推出时大肆强调自己是 Java 写的,比 Python 有优势。结果,搬石砸脚,2015 年初,CloudStack 的发起人 Citrix 宣布加入 OpenStack 基金会,CloudStack 眼看着就要寿终正寝。

如果嫌麻烦不想自己搭建私有云,用公有云,不论是 AWS,GCE,Azure,还是阿里云,青云,在都提供了 Python SDK,其中 GCE 只提供 Python 和 JavaScript 的 SDK,而青云只提供 Python SDK。可见各家云平台对 Python 的重视。

提到基础设施搭建,不得不提 Hadoop,在今天,Hadoop 因为其 MapReduce 数据处理速度不够快,已经不再作为大数据处理的首选,但是 HDFS 和 Yarn——Hadoop 的两个组件——倒是越来越受欢迎。Hadoop 的开发语言是 Java,没有官方提供 Python 支持,不过有很多第三方库封装了 Hadoop 的 API 接口(pydoop,hadoopy 等等)。

Hadoop MapReduce 的替代者,是号称快上 100 倍的 Spark,其开发语言是 Scala,但是提供了 Scala,Java,Python 的开发接口,想要讨好那么多用 Python 开发的数据科学家,不支持 Python,真是说不过去。HDFS 的替代品,比如 GlusterFS,Ceph 等,都是直接提供 Python 支持。Yarn 的替代者,Mesos 是 C++ 实现,除 C++ 外,提供了 Java 和 Python 的支持包。

元素的应用

大家知道,爬虫实际上就是模拟浏览器请求,然后把请求到的数据,经过我们的分析,提取出我们想要的内容,这也就是爬虫的实现

首先,我们要写爬虫,可以借鉴一些工具,我们先从简单的入门,首先说到请求,我们就会想到python中,非常好用的requests,然后说到分析解析就会用到bs4,然后我们可以直接用pip命令来实现安装,假如安装的是python3,也可以用pip3

安装好这两个类库之后,然后我们就可以先请求数据,查看下新闻的内容,这个时候我们有可能看到的是乱码

怎么处理乱码呢?我们可以拿浏览器打开网页,右键查看网页源代码,我们可以看到编码格式为utf-8

然后我们在输出的时候添加编码格式,就可以查看到正确编码的数据了

拿到数据之后,我们需要先分析数据,看我们想要的数据在哪里,我们打开浏览器,右键审查,然后按示例图操作,就可以看到我们新闻所在的标签,假如是windows系统,选择开发中工具里面一样

你可能感兴趣的:(python错误捕获例程)