如何编写python文件将oracle导入kafka

如何编写python文件将oracle导入kafka,第1张

建议使用专业的程序卸载工具,专业的卸载软件在卸载后能扫描软件安装目录和注册表等,能最大程度清理程序带来的垃圾,从而实现最干净的卸载。如果你希望系统保持干净快速稳定工作,这是较好的选择。如腾讯电脑管家,不仅可以卸载程序,软件本身还带有管理系统随机启动程序工具,加快系统启动速度。

对于程序员来说基本上不存在重复性的工作,任何重复劳动都可以通过程序自动解决。下面千锋带你一起了解爬虫需要哪些相关的技能。

1、基本的编码基础(至少一门编程语言)

这个对于任何编程工作来说都是必须的。基础的数据结构你得会吧。数据名字和值得对应(字典),对一些url进行处理(列表)等等。事实上,掌握的越牢固越好,爬虫并不是一个简单的工作,也并不比其他工作对编程语言的要求更高。

熟悉你用的编程语言,熟悉相关的框架和库永远是百益无害。我主要用Python,用Java写爬虫的也有,理论上讲任何语言都可以写爬虫的,不过最好选择一门相关的库多,开发迅速的语言。用C语言写肯定是自找苦吃了。

2、任务队列

当爬虫任务很大的时候,写一个程序跑下来是不合适的:

如果中间遇到错误停掉,重头再来?这不科学

我怎么知道程序在哪里失败了?任务和任务之间不应该相互影响

如果我有两台机器怎么分工?

所以我们需要一种任务队列,它的作用是:讲计划抓取的网页都放到任务队列里面去。然后worker从队列中拿出来一个一个执行,如果一个失败,记录一下,然后执行下一个。这样,worker就可以一个接一个地执行下去。也增加了扩展性,几亿个任务放在队列里也没问题,有需要可以增加worker,就像多一双亏筷子吃饭一样。

常用的任务队列有kafka,beanstalkd,celery等。

3、数据库

这个不用讲了,数据保存肯定要会数据库的。不过有时候一些小数据也可以保存成json或者csv等。我有时想抓一些就直接按照文件夹保存文件。推荐使用NoSQL的数据库,比如mongodb,因为爬虫抓到的数据一般是都字段-值得对应,有些字段有的网站有有的网站没有,mongo在这方面比较灵活,况且爬虫爬到的数据关系非常非常弱,很少会用到表与表的关系。

4、>

>

5、运维

这个话题要说的有很多,实际工作中运维和开发的时间差不多甚至更多一些。维护已经在工作的爬虫是一个繁重的工作。随着工作时间增加,一般我们都会学着让写出来的爬虫更好维护一些。

比如爬虫的日志系统,数据量的统计等。将爬虫工程师和运维分开也不太合理,因为如果一个爬虫不工作了,那原因可能是要抓的网页更新了结构,也有可能出现在系统上,也有可能是当初开发爬虫的时候没发现反扒策略,上线之后出问题了,也可能是对方网站发现了你是爬虫把你封杀了,所以一般来说开发爬虫要兼顾运维。

搜索本产品内容

查询

文档中心 > 消息队列 CKafka > SDK 文档 > Python SDK > 公网 SASL_SSL 方式接入

公网 SASL_SSL 方式接入

最近更新时间:2021-12-28 09:54:00

*** 作场景

前提条件

*** 作步骤

步骤1:准备工作

步骤2:生产消息

步骤3:消费消息

*** 作场景

该任务以 Python 客户端为例,指导您使用公网 SASL_SSL 方式接入消息队列 CKafka 并收发消息。

前提条件

安装 Python

安装 pip

配置 ACL 策略

下载 Demo

下载 SASL_SSL 证书

*** 作步骤

步骤1:准备工作

创建接入点。

实例列表 页面,单击目标实例 ID,进入实例详情页。

在 基本信息 > 接入方式 中,单击添加路由策略,在打开窗口中选择:路由类型:公网域名接入,接入方式:SASL_SSL。



创建角色。

在用户管理页面新建角色,设置密码。



创建 Topic。

在控制台 topic 管理页面新建 Topic(参见 创建 Topic)。

添加 Python 依赖库。

执行以下命令安装:

pip install kafka-python

步骤2:生产消息

修改生产消息程序 producerpy 中配置参数。

producer = KafkaProducer(

bootstrap_servers = ['xxxxxxxx:port'],

api_version = (1, 1),

#

# SASL_SSL 公网接入

#

security_protocol = "SASL_SSL",

sasl_mechanism = "PLAIN",

sasl_plain_username = "instanceId#username",

sasl_plain_password = "password",

ssl_cafile = "CARootpem",

ssl_check_hostname = False,

)

message = "Hello World! Hello Ckafka!"

msg = jsondumps(message)encode()

producersend('topic_name', value = msg)

print("produce message " + message + " success")

producerclose()

参数

描述

bootstrap_servers

接入网络,在控制台的实例详情页面接入方式模块的网络列复制。



sasl_plain_username

用户名,格式为 实例 ID + # + 用户名。实例 ID 在 CKafka 控制台 的实例详情页面的基本信息获取,用户在用户管理创建用户时设置。

sasl_plain_password

用户密码,在 CKafka 控制台实例详情页面的用户管理创建用户时设置。

topic_name

Topic 名称,您可以在控制台上 topic管理页面复制。



CARootpem

采用 SASL_SSL 方式接入时,所需的证书路径。

编译并运行 producerpy。

查看运行结果。



在 CKafka 控制台 的 topic管理页面,选择对应的 Topic , 单击更多 > 消息查询,查看刚刚发送的消息。



步骤3:消费消息

修改消费消息程序 consumerpy 中配置参数。

consumer = KafkaConsumer(

'topic_name',

group_id = "group_id",

bootstrap_servers = ['xxxxxxxx:port'],

api_version = (1,1),

#

# SASL_SSL 公网接入

#

security_protocol = "SASL_SSL",

sasl_mechanism = 'PLAIN',

sasl_plain_username = "instanceId#username",

sasl_plain_password = "password",

ssl_cafile = "CARootpem",

ssl_check_hostname = False,

)

for message in consumer:

print ("Topic:[%s] Partition:[%d] Offset:[%d] Value:[%s]" %

(messagetopic, messagepartition, messageoffset, messagevalue))

参数

描述

bootstrap_servers

接入网络,在控制台的实例详情页面接入方式模块的网络列复制。



group_id

消费者的组 ID,根据业务需求自定义。

sasl_plain_username

用户名,格式为 实例 ID + # + 用户名。实例 ID 在CKafka 控制台的实例详情页面的基本信息获取,用户在用户管理创建用户时设置。

sasl_plain_password

用户名密码,在 CKafka 控制台实例详情页面的用户管理创建用户时设置

topic_name

Topic 名称,您可以在控制台上 topic管理页面复制。



CARootpem

采用 SASL_SSL 方式接入时,所需的证书路径。

编译并运行 consumerpy。

查看运行结果。



在 CKafka 控制台 的 Consumer Group 页面,选择对应的消费组名称,在主题名称输入 Topic 名称,单击查询详情,查看消费详情。



上一篇: 公网 SASL_PLAINTEXT 方式接入下一篇: VPC 网络接入

文档内容是否对您有帮助?

有帮助没帮助

如果遇到产品相关问题,您可咨询 在线客服 寻求帮助。

消息队列 CKafka 相关文档

API 概览

创建主题

签名方法

获取实例列表

删除主题白名单

增加主题白名单

错误返回结果

产品概述

获取主题属性

点击搜索腾讯云文档

取消

清除查询

以上就是关于如何编写python文件将oracle导入kafka全部的内容,包括:如何编写python文件将oracle导入kafka、入门Python爬虫需要掌握哪些技能和知识点、python怎么安装acl包等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/9628897.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-30
下一篇 2023-04-30

发表评论

登录后才能评论

评论列表(0条)

保存