Đồ án: Phân tích thông báo tuyển dụng bằng Web Scraping và Topic Analysis

Đồ án nghiên cứu tốt nghiệp tìm hiểu web scaping và topic analysis để phân tích các thông báo tuyển dụng, thiết kế chi tiết, tính toán kỹ thuật theo tiêu chuẩn, đánh giá tính khả

Chuyên ngành

Công Nghệ Thông Tin

Người đăng

Ẩn danh

Thể loại

Khóa Luận Tốt Nghiệp

2015-2019

69
1
0

Phí lưu trữ

30 Point

Tóm tắt

I. Khái Niệm Web Scraping và Ứng Dụng trong Phân Tích Tin Tuyển Dụng

Web scraping là kỹ thuật tự động hóa việc thu thập dữ liệu từ các trang web thông qua các chương trình máy tính. Trong bối cảnh phân tích tin tuyển dụng, web scraping cho phép các nhà tuyển dụng và nhà nghiên cứu thu thập hàng ngàn tin tuyển dụng từ các nền tảng như LinkedIn, Indeed hay các trang web tuyển dụng địa phương. Kỹ thuật này giúp tiết kiệm thời gian và công sức so với việc thu thập dữ liệu thủ công. Bằng cách sử dụng web scraping, chúng ta có thể nhanh chóng phân tích các xu hướng tuyển dụng, yêu cầu kỹ năng, mức lương phổ biến và các chính sách đãi ngộ. Điều này cung cấp những thông tin quý báu cho cả nhà tuyển dụng lẫn những người tìm việc, giúp họ hiểu rõ hơn về thị trường lao động.

1.1. Định Nghĩa Web Scraping

Web scraping là quá trình trích xuất dữ liệu từ các trang web bằng cách phân tích cấu trúc HTML. Các công cụ web scraping tự động điều hướng trang web, tìm kiếm các phần tử cần thiết và lưu trữ dữ liệu vào định dạng có cấu trúc. Kỹ thuật này tuân theo các nguyên tắc đạo đức và pháp lý nhất định để đảm bảo quyền riêng tư và tuân thủ điều khoản dịch vụ của website.

1.2. Cấu Trúc HTML và Cách Sử Dụng trong Scraping

Cấu trúc HTML là nền tảng của web scraping hiệu quả. HTML sử dụng các tag như <div>, <span>, <p> để định dạng nội dung. Khi phân tích tin tuyển dụng, chúng ta cần xác định các class và ID của các phần tử chứa tiêu đề công việc, mô tả vị trí, yêu cầu và mức lương. Hiểu rõ cấu trúc HTML giúp tối ưu hóa quá trình trích xuất dữ liệu chính xác.

II. Topic Analysis Kỹ Thuật Phân Tích Chủ Đề Tin Tuyển Dụng

Topic analysis hoặc phân tích chủ đề là một kỹ thuật xử lý ngôn ngữ tự nhiên mạnh mẽ giúp khám phá các chủ đề ẩn trong các văn bản. Trong phân tích tin tuyển dụng, topic analysis cho phép chúng ta tự động phân loại và hiểu các chủ đề chính trong mô tả công việc. Các thuật toán như LDA (Latent Dirichlet Allocation) và PLSA (Probabilistic Latent Semantic Analysis) có thể xác định các từ khóa liên quan và nhóm chúng thành các chủ đề có ý nghĩa. Điều này giúp chúng ta phát hiện xu hướng tuyển dụng, các yêu cầu kỹ năng phổ biến và các lĩnh vực công việc nổi lên. Topic analysis là công cụ thiết yếu để biến dữ liệu thô thành những thông tin hữu ích.

2.1. Khái Niệm Topic Model và Ứng Dụng

Topic model là các mô hình thống kê giúp khám phá cấu trúc ẩn trong các bộ sưu tập văn bản lớn. Trong phân tích tin tuyển dụng, topic models có thể xác định các nhóm công việc tương tự, các yêu cầu kỹ năng chung và các xu hướng thị trường lao động. Những topic models này cung cấp cái nhìn sâu sắc về nhu cầu công việc hiện tại và tương lai trong các lĩnh vực khác nhau.

2.2. Thuật Toán LDA trong Phân Tích Tin Tuyển Dụng

LDA (Latent Dirichlet Allocation) là thuật toán topic analysis phổ biến nhất, giả định mỗi tài liệu là một hỗn hợp các chủ đề. Khi áp dụng LDA vào phân tích tin tuyển dụng, chúng ta có thể xác định những từ khóa chính liên quan đến kỹ năng, kinh nghiệm và tính chất công việc. Thuật toán LDA giúp tự động phát hiện mẫu và xu hướng mà con người có thể bỏ lỡ khi phân tích thủ công.

III. Quy Trình Thực Hiện Thu Thập Dữ Liệu Tin Tuyển Dụng

Quy trình thu thập dữ liệu từ các trang web tuyển dụng bao gồm nhiều bước quan trọng. Đầu tiên, chúng ta cần xác định các trang web nguồn và phân tích cấu trúc HTML của chúng. Sau đó sử dụng các công cụ như R, Python hoặc các thư viện web scraping chuyên dụng để tự động hóa quá trình tải xuống. Dữ liệu thu thập được cần được lưu trữ trong các định dạng có cấu trúc như CSV hoặc cơ sở dữ liệu. Bước tiếp theo là tiền xử lý dữ liệu, bao gồm làm sạch, loại bỏ các trùng lặp và chuẩn hóa thông tin. Cuối cùng, dữ liệu được chuẩn bị sẵn sàng cho phân tích topic và các phân tích thống kê tiếp theo.

3.1. Công Cụ và Thư Viện R cho Web Scraping

Ngôn ngữ R cung cấp nhiều thư viện mạnh mẽ cho web scraping như rvest, RSeleniumhttr. Thư viện rvest đơn giản và hiệu quả cho việc trích xuất dữ liệu từ HTML tĩnh. RSelenium hữu ích hơn cho các trang web động sử dụng JavaScript. Các thư viện này cho phép lập trình viên dễ dàng phân tích cấu trúc trang web, trích xuất dữ liệu cần thiết và lưu trữ chúng một cách có tổ chức.

3.2. Các Bước Tiền Xử Lý Dữ Liệu

Tiền xử lý dữ liệu là bước quan trọng để đảm bảo chất lượng phân tích. Chúng ta cần loại bỏ các ký tự đặc biệt, chuyển đổi chữ hoa thành chữ thường, xóa các từ dừng không có ý nghĩa, và tách từ một cách chính xác. Với phân tích tin tuyển dụng, tiền xử lý cũng bao gồm trích xuất các thông tin có cấu trúc như mức lương, vị trí địa lý và cấp độ kinh nghiệm từ văn bản tự do.

IV. Kết Quả Phân Tích và Ứng Dụng Thực Tiễn

Việc kết hợp web scrapingtopic analysis tạo ra những thông tin quý báu về thị trường lao động. Các kết quả phân tích có thể cho chúng ta biết những kỹ năng nào được tuyển dụng nhiều nhất, những ngành nghề đang phát triển, và những xu hướng lương hiện tại. Thông tin này rất hữu ích cho cả những người tìm việc lẫn các chuyên gia phát triển sự nghiệp. Những người tìm việc có thể tập trung vào kỹ năng được yêu cầu nhiều nhất, trong khi các nhà tuyển dụng có thể hiểu rõ hơn về cạnh tranh thị trường lao động. Các nhà chính sách cũng có thể sử dụng những dữ liệu phân tích này để xây dựng các chương trình đào tạo phù hợp với nhu cầu thực tế của thị trường.

4.1. Phát Hiện Xu Hướng Tuyển Dụng

Bằng phân tích topic, chúng ta có thể xác định những lĩnh vực công việc nổi lên và những kỹ năng kỹ thuật được ưu tiên. Các xu hướng này thường phản ánh sự thay đổi công nghệ và nhu cầu kinh tế. Phân tích tin tuyển dụng giúp các cá nhân và tổ chức dự báo các cơ hội việc làm trong tương lai và chuẩn bị những kỹ năng cần thiết.

4.2. Ứng Dụng trong Tư Vấn Sự Nghiệp và Tuyển Dụng

Các công cụ phân tích này hỗ trợ cô vấn sự nghiệp trong việc hướng dẫn ứng viên. Phân tích tin tuyển dụng cung cấp dữ liệu khách quan về nhu cầu kỹ năng thực tế. Các nhà tuyển dụng có thể tối ưu hóa mô tả công việc bằng cách sử dụng từ khóa phổ biến được phát hiện qua topic analysis, giúp thu hút ứng viên phù hợp hơn.

Tóm tắt và mô tả trên trang này được tạo với sự hỗ trợ của AI. Nếu bạn thấy nội dung không chính xác hoặc có vấn đề, vui lòng Báo lỗi nội dung.

28/12/2025
Đồ án tốt nghiệp tìm hiểu web scaping và topic analysis để phân tích các thông báo tuyển dụng

Trích đoạn nội dung tài liệu

CHƯƠNG 1: TỔNG QUAN ĐỀ TÀI 1.1 GIỚI THIỆU BÀI TOÁN Nghiên cứu tuyển dụng là một trong các hoạt động có ý nghĩa quan trọng đối với doanh nghiệp và xã hội. Việc khảo sát về yêu cầu cho một vị trí công việc, mức lương, chính sách chế độ đãi ngộ,. tốn nhiều nguồn lực, chi phí lớn. Quá trình thu thập và phân tích các khảo sát một cách thủ công cũng mất nhiều thời gian hơn và không bắt kịp xu hướng phát triển của thị trường việc làm trong tương lai.

Vấn đề đặt ra ở đây là làm sao phát hiện được các yêu cầu chung cho một vị trí tuyển dụng, mức lương phổ biến cho vị trí công việc cũng như chế độ đãi ngộ đối với nhân viên như thế nào để vừa nhanh chóng, vừa chính xác và đạt được hiệu quả cao. Một phương án được đề xuất là sử dụng dữ liệu việc làm có sẵn từ Internet, kết hợp các công nghệ hỗ trợ giúp thu thập thông tin trên web tuyển dụng, thông qua thu thập và đánh giá tự động để tìm ra được các quan tâm của ứng viên và nhà tuyển dụng. Việc thu thập tự động giúp giảm thiểu sự sai sót và nhọc nhằng cho con người so với tiến hành khảo sát trực tiếp. Hơn nữa với tốc độ việc làm thay đổi chóng mặt, việc thu thập và phân tích tự động cho độ trễ thời gian thấp hơn, kết quả phù hợp hơn với tình hình hiện tại.

Kết quả cũng mang ý nghĩa quan trọng tác động đến định hướng đào tạo sinh viên tại các trường đại học nhằm đáp ứng nhu cầu nhân lực tại các doanh nghiệp.2 MỤC TIÊU Nhiệm vụ của đề tài là thu thập dữ liệu cho một loại việc làm cụ thể trên trang web tuyển dụng nổi tiếng. Sau đó tiến hành phân tích theo chủ đề để phát hiện các yêu cầu chung, mức lương phổ biến, chính sách đãi ngộ,. tương ứng cho loại việc làm đó, đưa ra các từ khóa phổ biến liên quan đến vị trí công việc đang tìm kiếm, phán đoán được các kỹ năng mới, các xu hướng trong tương lai. Để đạt được điều đó, chúng tôi tập trung tìm hiểu một số vấn đề sau: + Tìm hiểu khái niệm web scarping và cấu trúc HTML + Tìm hiểu khái niệm topic analysis và các kỹ thuật phân tích theo chủ đề + Thực hiện công việc thu thập dữ liệu web tuyển dụng với các thư viện của R + Phân tích theo chủ đề đối với dữ liệu thu thập được để đưa ra các thông tin quan tâm + Đánh giá và giải thích kết quả 19 1.3 BỐ CỤC CỦA BÁO CÁO Các phần còn lại của báo cáo khóa luận được tổ chức như sau: Chương 2: Tổng quan về web scraping Chương 3: Tổng quan topic analysis Chương 4: Thực hiện thu thập các thông báo tuyển dụng Chương 5: Ứng dụng topic model phân tích các thông báo tuyển dụng Chương 6: Đánh giá và giải thích kết quả 20 CHƯƠNG 2: TỔNG QUAN WEB SCRAPING 2.1 KHÁI NIỆM WEB SCRAPING Sự ra đời mạng máy tính và môi trường world wide web (www) cung cấp nguồn thông tin và dữ liệu vô cùng phong phú.

Con người có thể khai thác chúng để có được những thông tin giá trị phục vụ cho hoạt động kinh tế, chính sách, giáo dục, y tế,… Với nguồn dữ liệu lớn vượt quá khả năng xử lý của con người, các kỹ thuật thu thập và phân tích dữ liệu web dần được quan tâm, nghiên cứu và phát triển. Web scraping là một kỹ thuật phổ biến để thu thập dữ liệu trên web. Web scraping được hiểu là quá trình thu thập và tải xuống dữ liệu quan tâm có trên web một cách tự động [1]. Quá trình web scraping trải qua các giai đoạn chính:  Xác định nguồn dữ liệu và dữ liệu quan tâm  Sử dụng công cụ để tiến hành trích xuất dữ liệu quan tâm  Tải xuống và lưu trữ dữ liệu theo cấu trúc nhất định Giai đoạn đầu tiên là xác định nguồn dữ liệu và dữ liệu quan tâm.

Chúng ta cần xác định trang web mà ta đang hướng đến, nắm được cấu trúc của chúng và xác định dữ liệu ta quan tâm nằm ở đâu. Dữ liệu web có thể sẵn có để tải xuống như các tài liệu TXT, CSV, PDF, XLS, JPEG nhưng cũng có thể tồn tại ở dạng tài liệu khác như HTML.1: Xác định nguồn dữ liệu và dữ liệu quan tâm Tiếp sau đó chúng ta cần lựa chọn một công cụ phù hợp để tiến hành thu thập dữ liệu. Có rất nhiều công cụ hỗ trợ cung cấp giao diện thân thiện và thao tác đơn giản, phổ biến như: myTrama, import.io, kimonolabs, Tabula, Zamzar, cometDocs, Navigator extensions, Google spreadsheets IMPORTHTML,… Chúng ta cũng có thể sử dụng các ngôn ngữ phổ biến như Java, Python, R, Ruby, Node,… để lập trình công cụ thu thập 21 dữ liệu web. Cuối cùng là xác định cấu trúc lưu trữ và thực hiện tải xuống dữ liệu.

Dữ liệu đầu ra có thể cấu trúc như TXT, CSV, JSON, XML, XLS,… Các vấn đề lớn liên quan đến web scraping bao gồm [3]:  Cấu trúc của các web là không giống nhau và thường xuyên thay đổi, đặt ra yêu cầu cần có sự thay đổi về kỹ thuật để tương thích. Vấn đề làm sạch, tổ chức, xử lý dữ liệu cũng gặp nhiều khó khăn hơn do sự khác biệt về cấu trúc.  Thông tin thu thập có thể trùng lặp hoặc không còn phù hợp do có thể một vị trí được đăng tuyển trên nhiều trang khác nhau và nội dung thường xuyên được cập nhật, làm mới.  Vấn đề quyền sử dụng dữ liệu và tính an toàn cũng được đề cập đến trong các dự án về web scraping.

Biện pháp an toàn đưa ra là tách biệt máy chủ lưu trữ dữ liệu tải xuống khỏi hệ thống lưu trữ của doanh nghiệp và thực hiện điều khiển từ xa. Để có thể tiến hành bước thu thập dữ liệu web, trước hết chúng ta cần nắm về cấu trúc web để có các biện pháp kỹ thuật tương ứng. Trong đề tài này, chúng tôi chỉ tập trung vào thu thập dữ liệu web dạng HTML bởi sự phổ biến của loại web này.2 CẤU TRÚC TÀI LIỆU HTML HTML (HyperText Markup Language) là ngôn ngữ đánh dấu siêu văn bản dùng các thẻ (tags) để định dạng dữ liệu và tạo khung hoặc bảng cho trang web. HTML cho phép chúng ta tạo ra các trang phối hợp hài hòa giữa văn bản thông thường với hình ảnh, âm thanh, video, các mối liên kết đến các trang siêu văn bản khác.

Tài liệu HTML được thiết kế để phân phối nội dung trên môi trường web. Tập hợp các tài liệu HTML cùng các tài liệu khác tạo thành website cung cấp thông tin về một tổ chức hoặc cá nhân. Theo quy ước, tất cả các tệp mã nguồn của trang siêu văn bản phải có đuôi là. Chúng ta có thể truy cập đến một tài liệu HTML thông qua URL - một địa chỉ web và là một chuẩn xác định tài liệu web trên Internet.

Một tài liệu HTML được tạo nên từ nhiều thành phần HTML. Một thành phần HTML được đánh dấu bằng một cặp thẻ mở (<keyword>) và thẻ đóng (</keyword>). Các thành phần HTML có thể cấu trúc phân cấp hình cây, trong đó thành phần mẹ chứa nhiều thành phần con lồng bên trong nó. Khung cấu trúc của một tài liệu HTML được thể hiện như hình 2.2: Khung cấu trúc chung của một tài liệu HTML Các thẻ dùng để báo cho trình duyệt cách thức trình bày văn bản trên màn hình hoặc dùng để chọn một mối liên kết đến các trang hoặc một đoạn chương trình khác.

Lệnh sẽ tác động vào đoạn văn bản nằm giữa hai thẻ. Các nhóm thẻ phổ biến được liệt kê trong bảng 2.1: Các nhóm thẻ thông dụng trong cấu trúc HTML Thẻ Ví dụ điển hình Thẻ định dạng trang <body> Thẻ định dạng văn bản <font>, <p>, <b>, <i>, <u>,. Thẻ tạo siêu liên kết (hyperlink) <a> Thẻ định dạng danh sách <ul>, <ol>, <li> Thẻ chèn hình ảnh <img> Chi tiết một số thẻ trong cấu trúc HTML và ví dụ được thể hiện trong bảng 2.2: Mô tả chi tiết một số thẻ trong cấu trúc HTML Thẻ và thuộc tính Ý nghĩa Ví dụ <sup> Định dạng chỉ số trên ax<sup>2</sup> ax2 <sub> Định dạng chỉ số dưới H<sub>2</sub>O H2O <h1>,.,<h6> Định dạng tiêu đề từ kích thước 1 <h1>Tiêu đề 1</h1> đến 6 (tiêu đề 1 có kích thước lớn Tiêu đề 1 nhất) <pre> Bỏ qua định dạng của các thẻ <pre><b>Xin chao</b> 23 HTML bên trong (không bỏ qua ký các bạn</pre> tự khoảng trắng, tab và xuống dòng) <b>Xin chào</b> các bạn <br> Kết thúc dòng hiện tại và chuyển <p>Dòng 1<br>Dòng 2</p> sang dòng mới Dòng 1 Dòng 2 <font Thiết lập font chữ cho văn bản <font face=”Arial” size=”5” face=”fontname” color=”#FF00FF”> size=”fontsize” color=”color”> <b> Định dạng chữ in đậm <b>Đoạn văn bản in đậm</b> <i> hay <em> Định dạng chữ in nghiêng <i>Đoạn văn bản in nghiêng</i> <u> Định dạng chữ in gạch dưới <u>Đoạn văn bản in gạch dưới</u> <strike> Định dạng chữ in gạch ngang chữ <strike>Đoạn văn bản in gạch ngang chữ</strike> Mỗi thẻ có thể có một hoặc nhiều thuộc tính đi kèm. Ví dụ một số thuộc tính của thẻ body như trong bảng 2.3: Một số thuộc tính của thẻ body Thuộc tính Ý nghĩa Ví dụ bgcolor=”color” Thiết lập màu nền cho trang web <body bgcolor=”#00FF00”> background=”url” Thiết lập ảnh nền cho trang web <body background=”image.jpg”> leftmargin=”num” Thiết lập lề trái và lề trên cho <body leftmargin=”0” topmargin=”num” trang web topmargin=”0”> text=”color” Thiết lập màu chữ của văn bản, kể <body text=”#FF0000”> cả các đề mục alink=”color” Xác định màu sắc cho các siêu <body alink=”#FF0000” vlink=”color” liên kết trong văn bản (active link, vlink = “#00FF00”>link= link=”color” visited link, link) “#0000FF”> 24 Các thẻ siêu liên kết (hyperlink) cho phép người dùng duyệt từ trang web này đến trang web khác.

Cú pháp tạo thẻ hyperlink: <a HREF=”URL”> Label </a> Trong đó: + URL là địa chỉ của trang liên kết. + Label có thể là text, button, hình ảnh,. Ngoài ra còn một số thẻ khác liên quan đến các loại tài liệu video, âm thanh, hình ảnh,. mà chúng tôi xin phép không trình bày trong báo cáo này.

25 CHƯƠNG 3: TỔNG QUAN TOPIC ANALYSIS 3.1 Khái niệm chủ đề Nguồn dữ liệu hiện có trên thế giới như các bài báo khoa học, các nội dung website, các bình luận trên mạng xã hội,… đều tập trung làm rõ một vấn đề nào đó mà ta gọi là chủ đề. Chủ đề giúp ta có một cái nhìn khái quát hơn về sự vật hoặc hiện tượng. Thông thường chủ đề của một bài báo cũng chính là tiêu đề của nó và cũng có thể được xác định thông qua nội dung. Một vấn đề đặt ra cho các nhà thống kê và các doanh nghiệp là các bài báo khoa học gần đây nói nhiều về chủ đề nào?

Nội dung được bảo vệ bản quyền — Tải xuống đầy đủ