|
@@ -27,6 +27,12 @@ class Feishu:
|
|
|
# 数据监控表
|
|
|
crawler_monitor = "https://w42nne6hzg.feishu.cn/sheets/shtcnlZWYazInhf7Z60jkbLRJyd?"
|
|
|
|
|
|
+ # 手机号
|
|
|
+ wangkun = "13426262515"
|
|
|
+ gaonannan = "18501180073"
|
|
|
+ xinxin = "15546206651"
|
|
|
+ huxinxue = "18832292015"
|
|
|
+
|
|
|
# 飞书路径token
|
|
|
@classmethod
|
|
|
def spreadsheettoken(cls, crawler):
|
|
@@ -291,8 +297,8 @@ class Feishu:
|
|
|
"majorDimension": major_dimension,
|
|
|
"startIndex": startindex,
|
|
|
"endIndex": endindex
|
|
|
- }
|
|
|
}
|
|
|
+ }
|
|
|
try:
|
|
|
urllib3.disable_warnings()
|
|
|
r = requests.delete(url=dimension_range_url, headers=headers, json=body, proxies=proxies, verify=False)
|
|
@@ -300,13 +306,101 @@ class Feishu:
|
|
|
except Exception as e:
|
|
|
Common.logger(log_type).error("删除视频数据异常:{}", e)
|
|
|
|
|
|
+ # 获取用户 ID
|
|
|
+ @classmethod
|
|
|
+ def get_userid(cls, log_type, username):
|
|
|
+ try:
|
|
|
+ url = "https://open.feishu.cn/open-apis/user/v1/batch_get_id?"
|
|
|
+ headers = {
|
|
|
+ "Authorization": "Bearer " + cls.get_token(log_type),
|
|
|
+ "Content-Type": "application/json; charset=utf-8"
|
|
|
+ }
|
|
|
+ if username == "wangkun":
|
|
|
+ username = cls.wangkun
|
|
|
+ elif username == "gaonannan":
|
|
|
+ username = cls.gaonannan
|
|
|
+ elif username == "xinxin":
|
|
|
+ username = cls.xinxin
|
|
|
+ elif username == "huxinxue":
|
|
|
+ username = cls.huxinxue
|
|
|
+ data = {"mobiles": [username]}
|
|
|
+ urllib3.disable_warnings()
|
|
|
+ r = requests.get(url=url, headers=headers, params=data, verify=False, proxies=proxies)
|
|
|
+ open_id = r.json()["data"]["mobile_users"][username][0]["open_id"]
|
|
|
+ Common.logger(log_type).info("{}:{}", username, open_id)
|
|
|
+ # print(f"{username}:{open_id}")
|
|
|
+ return open_id
|
|
|
+ except Exception as e:
|
|
|
+ Common.logger(log_type).error("get_userid异常:{}", e)
|
|
|
|
|
|
-if __name__ == "__main__":
|
|
|
- feishu = Feishu()
|
|
|
+ # 飞书机器人
|
|
|
+ @classmethod
|
|
|
+ def bot(cls, log_type, content):
|
|
|
+ try:
|
|
|
+ url = "https://open.feishu.cn/open-apis/bot/v2/hook/96989577-50e7-4653-9ec2-308fe3f2c5fe"
|
|
|
+ headers = {
|
|
|
+ 'Content-Type': 'application/json'
|
|
|
+ }
|
|
|
+ data = json.dumps({
|
|
|
+ "msg_type": "interactive",
|
|
|
+ "card": {
|
|
|
+ "config": {
|
|
|
+ "wide_screen_mode": True,
|
|
|
+ "enable_forward": True
|
|
|
+ },
|
|
|
+ "elements": [{
|
|
|
+ "tag": "div",
|
|
|
+ "text": {
|
|
|
+ "content": "\n<at id=" + str(cls.get_userid(log_type, "wangkun")) + "></at>\n" + content,
|
|
|
+ "tag": "lark_md"
|
|
|
+ }
|
|
|
+ }, {
|
|
|
+ "actions": [{
|
|
|
+ "tag": "button",
|
|
|
+ "text": {
|
|
|
+ "content": "快手爬虫表",
|
|
|
+ "tag": "lark_md"
|
|
|
+ },
|
|
|
+ "url": "https://w42nne6hzg.feishu.cn/sheets/shtcnICEfaw9llDNQkKgdymM1xf",
|
|
|
+ "type": "default",
|
|
|
+ "value": {}
|
|
|
+ },
|
|
|
+ {
|
|
|
+ "tag": "button",
|
|
|
+ "text": {
|
|
|
+ "content": "快手Jenkins",
|
|
|
+ "tag": "lark_md"
|
|
|
+ },
|
|
|
+ "url": "https://jenkins-on.yishihui.com/view/%E7%88%AC%E8%99%AB-Spider/job/%E5%BF%"
|
|
|
+ "AB%E6%89%8B%E5%B0%8F%E7%A8%8B%E5%BA%8F-%E8%A7%86%E9%A2%91%E7%88%AC%E5%8F%96/",
|
|
|
+ "type": "default",
|
|
|
+ "value": {}
|
|
|
+ }
|
|
|
+
|
|
|
+ ],
|
|
|
+ "tag": "action"
|
|
|
+ }],
|
|
|
+ "header": {
|
|
|
+ "title": {
|
|
|
+ "content": "📣有新的报警,请注意查处",
|
|
|
+ "tag": "plain_text"
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+ })
|
|
|
+ urllib3.disable_warnings()
|
|
|
+ r = requests.post(url, headers=headers, data=data, verify=False, proxies=proxies)
|
|
|
+ Common.logger(log_type).info("触发机器人消息:{}, {}", r, r.json()["StatusMessage"])
|
|
|
+ except Exception as e:
|
|
|
+ Common.logger(log_type).error("bot异常:{}", e)
|
|
|
|
|
|
- # print(feishu.get_range_value("person", "xiaoniangao", "dzcWHw", "B4:B4")[0])
|
|
|
- # print(feishu.get_range_value("person", "xiaoniangao", "dzcWHw", "C5:C5")[0][0]["link"])
|
|
|
- # print(feishu.get_range_value("person", "xiaoniangao", "dzcWHw", "B6:B6")[0])
|
|
|
- # print(feishu.get_range_value("person", "xiaoniangao", "dzcWHw", "B7:B7")[0])
|
|
|
|
|
|
+if __name__ == "__main__":
|
|
|
+ Feishu.bot("kuaishou", "我是快手测试内容,请忽略")
|
|
|
+ # Feishu.get_userid("kuaishou", "huxinxue")
|
|
|
+ # Feishu.get_department("kuaishou")
|
|
|
+ # print(Feishu.get_range_value("person", "xiaoniangao", "dzcWHw", "B4:B4")[0])
|
|
|
+ # print(Feishu.get_range_value("person", "xiaoniangao", "dzcWHw", "C5:C5")[0][0]["link"])
|
|
|
+ # print(Feishu.get_range_value("person", "xiaoniangao", "dzcWHw", "B6:B6")[0])
|
|
|
+ # print(Feishu.get_range_value("person", "xiaoniangao", "dzcWHw", "B7:B7")[0])
|
|
|
pass
|