Cách thu thập dữ liệu từ các trang kết quả tìm kiếm của Google (SERP)

Cách thức , Cạo ,02-08-20215 phút đọc

Không cần giới thiệu rằng Google là nền tảng được sử dụng rộng rãi cho các truy vấn liên quan đến tìm kiếm của mọi người trên toàn cầu. Theo trang web Statista, thị phần tìm kiếm toàn cầu của Google là 87,35%. Hơn nữa, số liệu thống kê cho thấy Google vượt quá 2 nghìn tỷ người dùng hàng năm, lập chỉ mục hơn 130 nghìn tỷ trang. Những số liệu thống kê này chứng minh rằng Google

Không cần giới thiệu rằng Google là nền tảng được sử dụng rộng rãi cho các truy vấn liên quan đến tìm kiếm của mọi người trên toàn cầu. Theo trang web Statista, thị phần tìm kiếm toàn cầu của Google là 87,35% . Hơn nữa, số liệu thống kê cho thấy Google vượt quá 2 nghìn tỷ người dùng hàng năm, lập chỉ mục hơn 130 nghìn tỷ trang. 

Những số liệu thống kê này chứng minh rằng Google có dữ liệu công khai toàn diện về SERP của họ, có giá trị đối với các nhà tiếp thị internet và những người khác. Vì vậy, việc thu thập SERP đã trở thành ưu tiên hàng đầu của các nhà tiếp thị Internet. Tuy nhiên, khi bạn vượt quá một số lượng yêu cầu nhất định, Google sẽ chặn địa chỉ IP của bạn.

Vì vậy, bài viết này sẽ đi sâu vào cách thu thập dữ liệu SERP mà không bị chặn. Trước đó, chúng tôi sẽ đề cập đến những điều cơ bản về thu thập dữ liệu web.

Web scraping là gì?

Giả sử bạn cần sao chép một tập dữ liệu lớn từ nhiều trang web. Lúc đầu, bạn có thể muốn sao chép và dán nội dung vào bảng tính. Tuy nhiên, vì đây là một tài liệu web lớn nên việc trích xuất dữ liệu thủ công sẽ tốn nhiều thời gian. Do đó, bạn cần tự động hóa quy trình thu thập dữ liệu, giúp bạn tiết kiệm được nhiều thời gian.

Quá trình tự động hóa việc thu thập dữ liệu này được gọi là thu thập dữ liệu web. Với phương pháp này, bạn có thể tải xuống nguồn HTML mà không cần nhập URL trang web vào trình duyệt.

Bạn có thể đọc để tìm thêm thông tin về việc thu thập dữ liệu web tại đây

Trang kết quả của công cụ tìm kiếm (SERP) là gì?

Giống như web scraping, scraping SERP là quá trình trích xuất 10 kết quả hàng đầu hoặc hơn từ tìm kiếm trên Google cho một loạt các từ khóa. Hầu hết các công ty Tối ưu hóa công cụ tìm kiếm (SEO) sử dụng kỹ thuật này để theo dõi thứ hạng của các trang web của khách hàng đối với các từ khóa mục tiêu. 

Ngoài ra, còn có những lý do khác để thực hiện thu thập dữ liệu cho SERPS, chẳng hạn như xác minh quảng cáo , tạo khách hàng tiềm năngtổng hợp nội dung .

Thông thường, có các công cụ tự động hóa để thực hiện thu thập dữ liệu cho SERP, bạn sẽ tìm hiểu trong các phần tiếp theo của bài viết này. Ngoài ra, bạn có thể tạo tập lệnh của riêng mình bằng các ngôn ngữ lập trình như Python. Tuy nhiên, bạn có thể làm như vậy nếu bạn chỉ tự tin vào khả năng lập trình và có chuyên môn kỹ thuật cao hơn. Ngoài ra, bạn cũng có thể sử dụng cURL để thu thập dữ liệu cho SERP của Google.

Sau khi các công cụ này thu thập dữ liệu từ các trang web có liên quan, chúng sẽ lưu chúng vào Cơ sở dữ liệu, tệp CSV, XML hoặc tệp JSON. Sau đó, dữ liệu này sẽ ở định dạng có cấu trúc, nơi bạn có thể xác định xem các nỗ lực SEO của mình có hoạt động chính xác hay không. Điều này là do bạn có thể thấy vị trí của trang theo thời gian.

Ngoài ra, SERP không chỉ bao gồm nội dung văn bản mà còn có hình ảnh, video, đoạn trích nổi bật, bản đồ tìm kiếm địa phương và nhiều nội dung khác.

Ở phần tiếp theo, bạn sẽ khám phá ra lợi ích đáng kể của việc thu thập thông tin từ SERP.

Làm thế nào việc thu thập dữ liệu SERP giúp bạn phục hồi thiệt hại do tin tặc gây ra?

Bị hack là điều luôn ảnh hưởng tiêu cực đến bạn. Trang web bị hack và thông tin đăng nhập của bạn có thể xuất hiện trên dark web. Tin tặc thậm chí có thể bán liên kết ngược hoặc chạy phần mềm độc hại dark web trên trang web của bạn. Tương tự như vậy, việc hack cũng có tác động tiêu cực đến bối cảnh SEO.

Một trong những lợi ích đáng kể của việc thu thập SERP trong Google là khả năng xác định các thiệt hại tiềm ẩn mà tin tặc có thể gây ra. Khi bạn đã nỗ lực để đạt được thứ hạng SEO trên SERP, tin tặc có thể dễ dàng xâm nhập vào cài đặt bảo mật của bạn và phá hỏng mọi nỗ lực SEO của bạn. 

Bạn có thể tìm thấy thông tin chi tiết về cách tin tặc chiếm đoạt nỗ lực SEO của bạn tại đây .

Theo một cuộc khảo sát, 48% chuyên gia SEO cho biết Google mất nhiều tháng để khôi phục trạng thái ban đầu của kết quả SERF. 

Theo dõi SERP cho các trang web của bạn cung cấp thông tin hữu ích về những gì đang xảy ra với thứ hạng của bạn. Chúng cũng giúp bạn xác định kết quả tiềm năng của thứ hạng của bạn trong các nỗ lực tấn công. Do đó, bạn có thể nhanh chóng yêu cầu Google khôi phục thứ hạng trước đó của mình. Kết quả là, thời gian ngừng hoạt động của trang web và sự sụt giảm thứ hạng trên các công cụ tìm kiếm sẽ được giảm thiểu đáng kể.

Mặt khác, khi trang web của bạn bị nhiễm phần mềm độc hại, nó sẽ làm giảm thứ hạng công cụ tìm kiếm của bạn. Trang web của bạn cũng có khả năng bị đưa vào danh sách đen cao hơn. Theo Godaddy, điều này đặc biệt đúng đối với các trang web doanh nghiệp nhỏ. 90% các trang web của Godaddy không biết rằng phần mềm độc hại đã lây nhiễm cho họ.

Vì vậy, việc liên tục thu thập tất cả SERP của bạn sẽ giúp bạn phát hiện trước những nỗ lực tấn công tiềm ẩn và chắc chắn giúp Google khôi phục kết quả của bạn.

Làm thế nào để thu thập kết quả tìm kiếm của Google?

Như tôi đã đề cập trước đó, có một số cách bạn có thể thu thập dữ liệu từ SERP của Google. Trong phần này, bạn sẽ khám phá ra một số cách thực hiện điều đó.

Trình thu thập dữ liệu Web trực quan

Bạch tuộc

Đây là công cụ thu thập dữ liệu web chung mà bạn có thể sử dụng để thu thập dữ liệu SERP của Google. Công cụ này không chỉ thu thập dữ liệu SERP mà còn có thể thu thập dữ liệu từ Google Maps.

Một trong những tính năng quan trọng của Octoparse là nó khéo léo tránh các biện pháp chống thu thập dữ liệu do các trang web mục tiêu đưa ra. Ngoài ra, nó không yêu cầu bạn phải là một lập trình viên để sử dụng công cụ thu thập dữ liệu trực quan của nó. Nó khá tiện lợi khi sử dụng và có sẵn dưới dạng giải pháp dựa trên đám mây cũng như phần mềm có thể cài đặt.

Bạn có thể tìm thêm thông tin về Octoparse tại đây .

Tiện ích mở rộng trình duyệt

Webscraper.io 

Webscraper.io là tiện ích mở rộng miễn phí cho trình duyệt web Google Chrome. Tiện ích này có thể trích xuất dữ liệu từ các trang web của Google dưới dạng HTML và CSS. Sau đó, tiện ích này có thể xuất dữ liệu ở định dạng CSV. Phiên bản tiện ích mở rộng của trình duyệt hoàn toàn miễn phí và đủ để quản lý các hoạt động thu thập dữ liệu của bạn. Nếu bạn chọn tùy chọn dựa trên đám mây, bạn sẽ phải trả phí.

Bạn cũng có thể trích xuất bản đồ Google bằng tiện ích này và chuyển đổi chúng thành Cơ sở dữ liệu. Bạn có thể tìm thêm thông tin về tiện ích mở rộng này tại đây .

API Tìm kiếm của Google

Bạn có biết rằng Google cung cấp một cách chính thức để trích xuất dữ liệu từ công cụ tìm kiếm của mình không? Mặc dù có những hạn chế như đã đề cập bên dưới, nhưng hiện tại nó có sẵn cho bất kỳ ai yêu cầu dữ liệu SERP. Sau đây là những hạn chế của nó:

  • So với công cụ thu thập dữ liệu web trực quan, tiện ích mở rộng của trình duyệt hoặc các công cụ thu thập dữ liệu web khác, công cụ này cung cấp thông tin hạn chế.
  • Google đã phát triển nó với mục đích tìm kiếm một trang web hoặc ít trang web hơn. Tuy nhiên, bạn có thể cấu hình nó để tìm kiếm toàn bộ World Wide Web (WWW), điều này đòi hỏi nhiều chuyên môn kỹ thuật.
  • Việc này cực kỳ tốn kém vì bạn sẽ phải tốn một khoản tiền lớn để gửi hàng loạt yêu cầu.

Vì vậy, với những hạn chế và chi phí của nó, Google Search API không phải là nền tảng lý tưởng để thu thập kết quả SERP. Luôn tốt hơn nếu sử dụng các phương pháp thay thế được đề cập trong bài viết này.

Sử dụng Python, yêu cầu và BeautifulSoup

Đối với những ai là chuyên gia về mã hóa Python, phương pháp này sẽ rất hữu ích. Nó chắc chắn sẽ giảm chi phí ngay từ đầu và bạn có nhiều quyền kiểm soát hơn.

Trong chương trình này, chúng ta sẽ trích xuất SERP cho truy vấn tìm kiếm, “Cách học Python”. Để đơn giản hơn, chúng ta sẽ mã hóa cứng truy vấn tìm kiếm. Sau đó, sau khi kéo tập kết quả, chúng ta sẽ in tiêu đề của kết quả. Hãy cùng tìm hiểu.

import requests from bs4 import BeautifulSoup import random text = 'How to learn Python programming' url = 'https://google.com/search?q=' + text useragent = ("Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/92.0.4515.107 Safari/537.36" ) Agent = useragent[random.randrange(len(useragent))] headers = {'user-agent': Agent} req = requests.get(url, headers=headers) soup = BeautifulSoup(req.text, 'lxml') for info in soup.find_all('h3'): print(info.text) print('__________')

Ở đây tôi sẽ giải thích rõ ràng từng dòng mã:

yêu cầu nhập khẩu

Chúng tôi sử dụng thư viện yêu cầu của Python để tải xuống SERP. Sau đó, mô-đun yêu cầu gửi yêu cầu get đến máy chủ Google. Điều này cho phép chương trình tải xuống nội dung HTML của SERP.

từ bs4 nhập BeautifulSoup

Sau đó, dòng sau đây tự giải thích, tải thư viện BeautifulSoup. Thư viện này giúp phân tích cú pháp các tài liệu HTML và XML.

text = 'Cách học lập trình Python' url = 'https://google.com/search?q=' + text

Đoạn mã này thiết lập URL của công cụ tìm kiếm để trích xuất dữ liệu. Vì vậy, tôi đã thiết lập URL là google.com và đối với truy vấn tìm kiếm, tôi đã thêm văn bản vào biến văn bản, 'Cách học lập trình Python' làm truy vấn tìm kiếm.

useragent = ("Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/92.0.4515.107 Safari/537.36" )

      

Sau đó đoạn mã trên sẽ thiết lập chuỗi tác nhân người dùng .

req = requests.get(url, headers=headers)

Đoạn mã trên gửi yêu cầu đến máy chủ web để tải xuống nội dung HTML được yêu cầu của kết quả tìm kiếm.

súp = BeautifulSoup(req.text, 'lxml')

Tạo một phiên bản của BeautifulSoup với dữ liệu mà đoạn mã trên yêu cầu từ tiêu đề phân tích cú pháp 'lxml'. Trước tiên, bạn phải cài đặt gói 'lxml' để đoạn mã trên hoạt động.

để biết thông tin trong soup.find_all('h3'): print(info.text) print('__________')

Sau đó, sử dụng vòng lặp for, tất cả các thẻ h3 được trích xuất để hiển thị tiêu đề.

Sử dụng proxy dân dụng để thu thập SERP của Google

Như đã đề cập trước đó, các công cụ tìm kiếm như Google áp đặt các hạn chế bao gồm cấm địa chỉ IP của bạn khi bạn vượt quá giới hạn thu thập dữ liệu. Đây là nơi proxy đóng vai trò quan trọng trong việc che giấu địa chỉ IP của bạn. Trong số tất cả các proxy hiện có, proxy dân dụng là lựa chọn lý tưởng. Điều này là do IP của chúng bắt nguồn từ chủ sở hữu nhà ở thực sự.

Tuy nhiên, khi bạn quét một vài SERP đầu tiên, Google sẽ nhận thấy hành động của bạn là vô nhân đạo. Sau đó, nó sẽ chặn địa chỉ IP của proxy và bạn sẽ phải xử lý captcha.

Đây là nơi mạng lưới proxy dân dụng hoạt động như vị cứu tinh của bạn. Khi bạn sử dụng mạng lưới proxy dân dụng, mỗi proxy sẽ có một địa chỉ IP duy nhất. Vì vậy, bạn có thể thu thập thông tin từ SERP bằng cách xoay vòng các địa chỉ IP. Sau đó, hành động của bạn sẽ xuất hiện như con người đối với công cụ tìm kiếm.

Để biết giải thích chi tiết về proxy dân cư, vui lòng tham khảo bài viết này .

Ý nghĩa pháp lý khi sử dụng proxy dân dụng để thu thập SERP của Google

Bây giờ, bạn hẳn đã có ý tưởng rõ ràng về Proxy dân dụng là gì và chúng có thể giúp bạn vượt qua lệnh cấm IP như thế nào. Bây giờ chúng ta sẽ xem xét một yếu tố quan trọng mà nhiều người dùng bỏ qua khi thu thập dữ liệu từ SERP của Google. Đó là những tác động pháp lý của việc sử dụng proxy dân dụng.

Trước hết, việc sử dụng proxy dân dụng để thu thập SERP của Google là hợp pháp. Vì vậy, với suy nghĩ đó, bạn có thể bị cám dỗ gửi các yêu cầu không giới hạn đến các công cụ tìm kiếm như Google. Như vậy, nó sẽ làm quá tải máy chủ của Google với một số lượng lớn các yêu cầu. Đây không phải là điều đúng đắn, ngay cả theo thuật toán SERP của Google.

Do đó, bạn cần đảm bảo rằng bạn luôn tôn trọng trang web mục tiêu hoặc công cụ tìm kiếm mà bạn sẽ trích xuất dữ liệu. Bạn cũng sẽ phải sử dụng các phương pháp trích xuất tốt nhất có thể, bao gồm cả việc trình trích xuất của bạn phải tôn trọng công cụ tìm kiếm mục tiêu.

Bạn phải ngay lập tức giới hạn các yêu cầu hoặc dừng quá trình thu thập dữ liệu nếu bạn hoặc nhà cung cấp proxy của bạn nhận được khiếu nại từ máy chủ web mục tiêu. Khiếu nại có thể là máy chủ web mục tiêu có thể đang phải chịu khối lượng công việc cao do các yêu cầu không giới hạn của bạn. Do đó, bạn cần phải thận trọng với những sự kiện như vậy.

Những câu hỏi thường gặp

Lấy dữ liệu từ Google có phải là hành vi phạm pháp không?

Thông thường, Google không thích khi các trình thu thập dữ liệu thu thập dữ liệu từ Google. Như tôi đã nêu nhiều lần trong bài viết này, Google có thể cấm địa chỉ IP của bạn. Ngoài ra, cho đến nay, Google vẫn chưa có hành động nào đối với việc thu thập dữ liệu quá mức. Rõ ràng, các công ty SEO sẽ không có lối thoát nếu Google thực hiện các hành động như vậy.

Phần kết luận

Bây giờ chúng tôi hy vọng bạn đã có được kiến thức tổng quan về các phương pháp khác nhau mà trình thu thập dữ liệu web sử dụng để thu thập dữ liệu từ SERP. Các trường hợp khác nhau sử dụng các phương pháp khác nhau. Cuối cùng, bạn đã biết cách sử dụng proxy dân dụng để thu thập dữ liệu SERP cùng với các tác động pháp lý của chúng.

Chúng tôi hy vọng bạn thấy bài viết này hữu ích và hãy theo dõi để biết thêm nhiều bài viết khác.