使用C# CefSharp Python采集某网站简历并且自动发送邀请短信的方法

前言

以往爬虫没怎么研究过,最近有个需求,要从某网站采集敏感信息,稍稍考虑了一下,决定利用C# Winform和Python一起来解决这个事件。

整个解决方案不复杂:C#编写WinForm窗体,进行数据分析和采集, Python本来不想用的,一下子没找到C#下Woff字体转Xml的方案,而网上Python的则有很多,所以就加了一个Python项目,虽然就1个脚本。

一、几个步骤:

首先要模拟登录,登录完了进入简历采集,然后模拟下载,下载完了以后就可以看到求职者的电话了。

这个电话号码是使用动态生成的Base64字体,所以直接提取文字是无法成功的。

1、先将Base64转成Woff字体,这个可以用C#完成(这其中的iso-8859-1编码是个坑,一般用Default会出现惊喜):

SetMainStatus("正在生成WOFF...");
   byte[] fontBytes = Convert.FromBase64String(CurFont);
   string fontStr = Encoding.GetEncoding("iso-8859-1").GetString(fontBytes).TrimEnd('\0');
   StreamWriter sw2 = new StreamWriter(@"R58.woff", false, Encoding.GetEncoding("iso-8859-1"));
   sw2.Write(fontStr);
   sw2.Close();

2、再将已经生成的Woff转成XML(WoffDec.exe是我用Python打包的Exe,其实有点小题大做了,为了这一个转化专门打了一个包,有时间还是整一个C#下面的好)

//调用python exe 生成xml文件
   ProcessStartInfo info = new ProcessStartInfo
   {
    FileName = "WoffDec.exe",
    WindowStyle = ProcessWindowStyle.Hidden
   };
   Process.Start(info).WaitForExit(2000);//在2秒内等待返回

整个WoffDec.py的代码就3行:

from fontTools.ttLib import TTFont
font = TTFont('R12.woff')
font.saveXML('R12.xml')

这个打包是有点意思的,先试了py2exe,不成功,换pyinstaller, 成了,连EXE一起有11M,也不是很大。

https://github.com/pyinstaller/pyinstaller 下载 或者 本地下载 ,或者在VS2017 Python环境下搜索PyInstaller直接安装。

右键使用“打开此处的命令提示符”;输入pyinstaller /path/to/yourscript.py即可打包成一个exe文件。在Winform应用调用时,应该整个文件夹都拷贝过去。

3、XML文件有了以后,以上面的Woff文件为基准准备为一个数据字典存储起来(这个地方有点绕,先找一个网站把Woff显示成文字和编码,然后根据编码在XML中查找它的字体定位点,我取的X和Y组成唯一值(X,Y就代表一个字),当然也可以取更多;

internal static readonly Dictionary<string, string> DicChar = new Dictionary<string, string>()
  {
   {"91,744","0" },
   {"570,0","1"},
   {"853,1143","2" },
   {"143,259","3" },
   。。。。。。
  };

4、上面这一步是要花点时间的,基准字典有了以后,就可以按每次生成的XML文件来进行匹配真实文字了。

5、真实文字取出后面的就简单了,直接采集到数据库,再连上短信发送业务,就可以自动群发了。

二、使用场景

上班后开启采集服务即不用再理会,由系统每间隔一段时间自动下载简历,并自动推送面试邀请短信。只要有新人发布对口的求职信息,系统就会马上给他发送邀请,实为抢人利器。

BTW:网页模拟操作使用的CEFSharp将另开一章。

总结

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,谢谢大家对我们的支持。

(0)

相关推荐

  • asp.net(c#)做一个网页数据采集工具

    通过这个软件一两天就完成了几千产品数据的录入,可见很多工作不是一味用人工去做,作为一个程序员,就是要让很多让那些经常做重复性的.繁琐的工作中的人解放出来.下面只是写了一些核心代码,而且采集必须要和对应网站相挂钩,作者:郑少群 复制代码 代码如下: //提取产品列表页中产品最终页的网页 private void button1_Click(object sender, EventArgs e) { if (textBox1.Text.Trim() == "" || textBox2.Te

  • C#实现的中国移动官网手机号码采集器

    早几天要换号码,到移动营业厅去办说稍微看的顺眼的号码就要预存多少多少.我觉得好坑,但是在官网又找不到稍微顺眼的.无奈之下没办法写了这个采集软件.主要是想弥补官网搜索不方便的缺陷.下面上代码,比较简单: 复制代码 代码如下: static void Main(string[] args) {     string[] t = { "134", "135", "136", "137", "138", "

  • Python采集腾讯新闻实例

    目标是把腾讯新闻主页上所有新闻爬取下来,获得每一篇新闻的名称.时间.来源以及正文. 接下来分解目标,一步一步地做. 步骤1:将主页上所有链接爬取出来,写到文件里. python在获取html方面十分方便,寥寥数行代码就可以实现我们需要的功能. 复制代码 代码如下: def getHtml(url):      page = urllib.urlopen(url)      html = page.read()      page.close()      return html 我们都知道htm

  • python实现自动登录人人网并采集信息的方法

    本文实例讲述了python实现自动登录人人网并采集信息的方法.分享给大家供大家参考.具体实现方法如下: #!/usr/bin/python # -*- coding: utf-8 -*- import sys import re import urllib2 import urllib import cookielib class Renren(object): def __init__(self): self.name = self.pwd = self.content = self.doma

  • Python爬虫_城市公交、地铁站点和线路数据采集实例

    城市公交.地铁数据反映了城市的公共交通,研究该数据可以挖掘城市的交通结构.路网规划.公交选址等.但是,这类数据往往掌握在特定部门中,很难获取.互联网地图上有大量的信息,包含公交.地铁等数据,解析其数据反馈方式,可以通过Python爬虫采集.闲言少叙,接下来将详细介绍如何使用Python爬虫爬取城市公交.地铁站点和数据. 首先,爬取研究城市的所有公交和地铁线路名称,即XX路,地铁X号线.可以通过图吧公交.公交网.8684.本地宝等网站获取,该类网站提供了按数字和字母划分类别的公交线路名称.Pyth

  • C#网页信息采集方法汇总

    本文实例总结了三种常用的C#网页信息采集方法.分享给大家供大家参考.具体实现方法如下: 一.通过HttpWebResponse 来获取 复制代码 代码如下: public static string CheckTeamSiteUrl(string url)  {          string response = "";          HttpWebResponse httpResponse = null;            //assert: user have acces

  • Python制作爬虫采集小说

    开发工具:python3.4 操作系统:win8 主要功能:去指定小说网页爬小说目录,按章节保存到本地,并将爬过的网页保存到本地配置文件. 被爬网站:http://www.cishuge.com/ 小说名称:灵棺夜行 代码出处:本人亲自码的 import urllib.request import http.cookiejar import socket import time import re timeout = 20 socket.setdefaulttimeout(timeout) sl

  • C#结合数据库的数据采集器示例

    本文所述为C#数据采集器,并结合有数据库操作,比较实用.读者可以进一步再完善一下写成一个更加成熟的数据采集程序. 具体功能代码如下: using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Linq; using System.Text; using System.Windows.Forms;

  • 使用C# CefSharp Python采集某网站简历并且自动发送邀请短信的方法

    前言 以往爬虫没怎么研究过,最近有个需求,要从某网站采集敏感信息,稍稍考虑了一下,决定利用C# Winform和Python一起来解决这个事件. 整个解决方案不复杂:C#编写WinForm窗体,进行数据分析和采集, Python本来不想用的,一下子没找到C#下Woff字体转Xml的方案,而网上Python的则有很多,所以就加了一个Python项目,虽然就1个脚本. 一.几个步骤: 首先要模拟登录,登录完了进入简历采集,然后模拟下载,下载完了以后就可以看到求职者的电话了. 这个电话号码是使用动态生

  • python抓取网站的图片并下载到本地的方法

    实例如下所示: #!/usr/bin/python # -*- coding: UTF-8 -*- import re import urllib,urllib2; #通过url获取网页 def getHtml(url): # 要设置请求头,让服务器知道不是机器人 user_agent = 'Mozilla/4.0 (compatible; MSIE 5.5; Windows NT)' headers = {'User-Agent': user_agent} request=urllib2.Re

  • 15行Python代码实现免费发送手机短信推送消息功能

    实现的功能: 通过代码定时给手机推送短信,短信内容可以自定义文字,当然你也可以去别的网站爬取每日心灵鸡汤,天气预报或其它信息进行推送.关于爬取数据可以参考:Python40行代码实现天气预报和每日鸡汤推送 本文主要讲如何实现发送短信的功能,全部代码只用15行. 首先贴出实现的效果图,后面再分两步详细描述实现过程,第一步免费注册api接口,第二步只需要写10来行代码. 代码运行后本地收到返回的执行情况: 手机收到代码发送过来的短信截图: 实现过程: 1.免费注册获取发送短信的api接口 我们需要A

  • 教你用Python实现短信验证码的发送

    目录 1. 短信API平台 2. 使用官方提供的SDK实现短信发送 2.1 安装SDK 2.2 使用官方的测试用例进行测试 2.3 参数及其参数的查看 3. 单例模式实现短信发送 总结 1. 短信API平台 使用的短信API平台为:容联云(https://www.yuntongxun.com/) 开发者文档:http://doc.yuntongxun.com/pe/5a531a353b8496dd00dcdfe2 2. 使用官方提供的SDK实现短信发送 Python SDK 文档 Python

  • python 爬取免费简历模板网站的示例

    代码 # 免费的简历模板进行爬取本地保存 # http://sc.chinaz.com/jianli/free.html # http://sc.chinaz.com/jianli/free_2.html import requests from lxml import etree import os dirName = './resumeLibs' if not os.path.exists(dirName): os.mkdir(dirName) headers = { 'User-Agent

  • 使用python采集脚本之家电子书资源并自动下载到本地的实例脚本

    jb51上面的资源还比较全,就准备用python来实现自动采集信息,与下载啦. Python具有丰富和强大的库,使用urllib,re等就可以轻松开发出一个网络信息采集器! 下面,是我写的一个实例脚本,用来采集某技术网站的特定栏目的所有电子书资源,并下载到本地保存! 软件运行截图如下: 在脚本运行时期,不但会打印出信息到shell窗口,还会保存日志到txt文件,记录采集到的页面地址,书籍的名称,大小,服务器本地下载地址以及百度网盘的下载地址! 实例采集并下载我们的python栏目电子书资源: #

  • Python采集天天基金数据掌握最新基金动向

    目录 一.分析网站 二.开始代码 三.运行代码,得到数据 案例实现流程 思路分析: 需要什么数据?需要的数据在哪里? 代码实现: 发送请求 获取数据 解析数据 多页爬取 保存数据 知识点: requests发送请求 开发者工具的使用 json类型数据解析 正则表达式的使用 开发环境: 版 本:python 3.8 编辑器:pycharm 2021.2 本次目标: 一.分析网站 第一步:打开开发者工具,按F12,或者右键点击检查第二步:刷新网站,点击搜索工具,在搜索框内输入基金代码,点击搜索 第三

  • Python采集电视剧《开端》弹幕做成词云图

    目录 知识点介绍 环境介绍 网站分析 完整爬虫代码实现 结果展示 总结 知识点介绍 爬虫基本思路流程 requests模块的使用 pandas保存表格数据 pyecharts做词云图可视化 环境介绍 python 3.8 pycharm requests >>> pip install requests pyecharts >>> pip install pyecharts 网站分析 打开X讯视频的网页,点开<开端>,播放视频,弹幕随之出现再屏幕之上. 首先

  • Python实现提取PDF简历信息并存入Excel

    目录 介绍 1. 将PDF文档中的文字读取到word中 2. 将word中读到的文字输入到excel中 介绍 今天为大家分享一个真实的案例. 今天接到人力资源部同事的需求,想把他人投递的PDF简历资料里的关键信息数据,提取到excel表中汇总. 目标资料背景:是由求职者自行编制的简历材料,投递到人力资源部.由于其数据格式的不确定,对数据信息的采集带来了一定困难. 我的解答思路是:先从PDF文档中抓取文字信息保存到word文档中,然后再从word文档中读取文字信息保存到excel中. 1. 将PD

随机推荐