このシステムはPython+を使用して開発されていますSeleniumクローラー プログラムは、 BOSSダイレクト採用 Web サイトから採用データを収集し、収集した採用データをMySQLデータベースに保存した後、データベースに保存された採用データに対して、データの重複排除、フィールド タイプとコンテンツの統合、削除などのデータ クリーニングを実行します。無関係なデータなどを削除し、特定の職種の採用数、学歴、職歴などのデータを分析します。経験、企業種類、企業規模、都市分布等の観点から分析 学歴、職歴、企業種類、企業規模等の観点から職種の給与水準を分析特定の職種に出現する頻度の高いスキルワードを組み合わせ、その結果を分析することで習得すべきスキルを取得し、分析結果を直感的に表示するための採用データビジュアル分析システムを設計・実装しました。分析結果を視覚的なチャートの形式で表示します。技術的には、 SpringBootフレームワークを使用してバックエンド アクセスを構築し、 RESTful API を使用してフロントエンドにデータを提供します。システム フロントエンド インターフェイスはVue + Element-UIフレームワークを使用して構築され、ビジュアル チャートはv-chart を使用して生成されます。 + echartsチャート ライブラリ。
Bosszp-spiderディレクトリ内のクローラー プログラムをPycharmにインポートし、 SpiderMainファイルを開き、プログラム内のmain関数を見つけて、 main関数内のコード SpiderObj = Spider('copywriting', city, 1) を変更してコピーライティングを変更します。クロールする投稿に変更し、ターミナルを使用して Google Chrome のインストール ディレクトリに入り、./chrome.exe を実行します。 -remote-debugging-port=9222コマンドを実行し、起動した Google Chrome でBOSSダイレクト採用 Web サイトを開き、QR コードをスキャンしてログインします。上記の手順を完了すると、クローラー プログラムを実行できるようになります。
找到listen 80,然后在它下面添加或替换如下配置
listen 80;
server_name localhost;
sendfile on;
keepalive_timeout 65;
charset utf-8;
#access_log logs/host.access.log main;
location / {
add_header 'Access-Control-Allow-Origin' $http_origin;
add_header 'Access-Control-Allow-Credentials' 'true';
add_header 'Access-Control-Allow-Methods' 'GET, POST, OPTIONS';
add_header 'Access-Control-Allow-Headers' 'DNT,web-token,app-token,Authorization,Accept,Origin,Keep-Alive,User-Agent,X-Mx-ReqToken,X-Data-Type,X-Auth-Token,X-Requested-With,If-Modified-Since,Cache-Control,Content-Type,Range';
add_header 'Access-Control-Expose-Headers' 'Content-Length,Content-Range';
if ($request_method = 'OPTIONS') {
add_header 'Access-Control-Max-Age' 1728000;
add_header 'Content-Type' 'text/plain; charset=utf-8';
add_header 'Content-Length' 0;
return 204;
}
root /upload/;
index index.html index.htm; # 需要转发的url地址
}
location ^~/apm/ {
proxy_pass http://localhost:8890/;
}
location ^~/apj/ {
proxy_pass http://localhost:8890/admin/;
}
IDEA を使用して、分析ディレクトリ内のすべてのバックグラウンド コードをインポートします。すべての依存関係がダウンロードされたら、独自の状況に応じてapplication.ymlファイル内の構成内容を変更します。変更が完了したら、 Navicat を使用して、 bosszpという名前のデータベースを作成します。データベーステーブルをインポートした後、それを構成ファイルと同じレベルにインポートします。採用データは、 Navicat を使用して作成されたデータベースのジョブテーブルにインポートされます。バックグラウンド コードを実行する前に、データベース内のデータをクリーンアップする必要があります。まず、データが重複排除され、無関係なデータが削除されます。ジョブ名を利用して各位置情報を分類し、最終的にフィールドの種類や内容を統一する処理例を以下に2つ示します(処理対象のフィールド情報のみ表示)。
住所 | 取り扱い住所 | 変換アドレス | タイプ | 処理タイプ | 距離 |
---|---|---|---|---|---|
北京 | 北京順義区 | 北京 | 運用保守エンジニア | オペレーションエンジニア | 順義区 |
深セン | 深セン龍崗区 | 深セン | 運用保守エンジニア | オペレーションエンジニア | 龍崗区 |
ワークタグ | 処理済みワークタグ | 給料 | 取扱給与 | 平均給与 | 給与月 |
---|---|---|---|---|---|
[「サーバー構成」、「複数のプロセス」、「複数のスレッド」、「Linux」、「アルゴリズムの基本」、「データ構造」、「」] | サーバー構成 マルチプロセス マルチスレッド Linuxアルゴリズム 基本データ構造 | [9000、11000] | 9-11,000/月 | 10000 | 給料0 |
[「Python」、「Java」、「Go」、「TypeScript」、「分散テクノロジー」、「コンテナテクノロジー」、「」、「」] | Python Java Go TypeScript 分散テクノロジ コンテナ テクノロジ | [15000、25000] | 15-25,000/月·13 給与 | 20000 | 13 給料 |
会社タグ | 取り扱い会社タグ | 会社人 | 取り扱う会社人 |
---|---|---|---|
なし | [0、20] | 0~20名 | |
【「定期健康診断」、「付帯医療保険」、「軽食・アフタヌーンティー」、「社員旅行」、「時間外手当」、「ストックオプション」、「食事手当」、「休日手当」、「期末賞与」 "、"5つの保険と金"] | 定期健康診断、付帯医療保険、軽食、アフタヌーンティー、社員旅行・残業補助金、ストックオプション、食事補助、休日手当、年末賞与、5つの保険と1つの基金 | [0, 10000] | 10,000人以上 |
データ処理が完了すると、バックグラウンドデータの準備作業が完了し、異常なエラーが発生しなければバックグラウンドコードのメインプログラムが起動されます。
まず、 npmコマンドを使用して、 yarnパッケージ マネージャーをグローバルにインストールします。次に、 WebStorm を使用して、すべてのフロントエンド コードをrecruit-data-analysisディレクトリにインポートします。インポートが完了したら、 yarn installコマンドを使用して必要なモジュールをインストールします。モジュールのインストールが完了したら、 yarn run buildコマンドを実行してプロジェクトをインストールします。パッケージ化が完了すると、このフォルダー内のすべてのファイルが上で作成されたアップロードフォルダーに配置されます。完了すると、 Windows 11のフロント デスクのローカル アクセス アドレスはhttp://localhost/になります。