自动采集推送(爬取金十数据网站并自动推送到微信查看风险经济事件)

优采云 发布时间: 2021-11-23 20:13

  自动采集推送(爬取金十数据网站并自动推送到微信查看风险经济事件)

  一、背景

  由于业务需要获取有风险的经济事件并采取应对措施,但由于种种原因,他们忽略了每天查看经济日历,因此通过抓取黄金十数据网站并自动推送到微信查看。

  二、目标达成

  

  图片

  三、环境和工具

  1、pycharm:Python 开发 IDE

  2、windows 窗口句柄获取工具

  四、实现思路

  爬虫获取风险事件,然后python通过句柄定位微信窗口,模拟本地微信客户端的键盘鼠标操作发送给好友(自己)。最初使用的是微信itchat库,但这是基于微信网页版的。多次登录后微信提醒:为了您的账号安全,该微信账号不再允许登录网页版微信。您可以使用 Windows 微信或 Mac。

  五、主代码

<p>

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

import scrapy

from selenium import webdriver

from scrapy import signals

import win32con,win32gui,time,win32api

import win32clipboard as w

import re

from datetime import datetime

hwnd = 394916 #微信窗口句柄,使用句柄工具获取

class JinshiSpider(scrapy.Spider):

name = 'jinshirili'

allowed_domains = ['jinshi.com']

start_urls = ['https://rili.jin10.com/']

@classmethod

def from_crawler(cls, crawler, *args, **kwargs):

spider = super(JinshiSpider, cls).from_crawler(crawler, *args, **kwargs)

options = webdriver.ChromeOptions()

options.add_argument('--headless')

spider.chrome = webdriver.Chrome(chrome_options=options)

crawler.signals.connect(spider.spider_closed, signal=signals.spider_closed)

return spider

def spider_closed(self, spider):

spider.chrome.quit()

print('一次爬取结束-----等待下次循环爬取')

def parse(self, response):

#获取风险事件列表

contents = response.xpath('//div[@class="jin-rili_content J_rili_content"]//tr')

# print(len(contents))

for i,content in enumerate(contents):

searchObj = re.search(r'

0 个评论

要回复文章请先登录注册


官方客服QQ群

微信人工客服

QQ人工客服


线