Làm cách nào để kéo dữ liệu từ trang web vào trang tính?

Bạn có thể quét web trong Google Trang tính không? . Trên thực tế, Google Sheets có thể được coi là một công cụ quét web cơ bản. Bạn có thể sử dụng một công thức đặc biệt để trích xuất dữ liệu từ các trang web, nhập dữ liệu trực tiếp vào trang tính google và chia sẻ dữ liệu đó với bạn bè của mình. Bằng cách đọc các phần sau, bạn có thể tìm hiểu các phương pháp dễ dàng về cách xây dựng một công cụ quét web đơn giản bằng Google Trang tính

 

Mục lục

  • Lựa chọn 1. Tạo một công cụ quét web dễ dàng bằng cách sử dụng ImportXML trong Google Spreadsheets
  • Lựa chọn 2. Lấy dữ liệu giá với một công thức đơn giản. nhậpXML
  • Lựa chọn số 3. Một công thức khác để lấy dữ liệu với Google Sheets
  • Tùy chọn số 4. Công cụ quét web tự động mà không cần mã hóa

 

Lựa chọn 1. Tạo một công cụ quét web dễ dàng bằng cách sử dụng ImportXML trong Google Spreadsheets

Bước 1. Mở một trang tính Google mới

Bước 2. Mở một trang web mục tiêu với Chrome. Trong trường hợp này, chúng tôi chọn Trò chơi bán hàng. Nhấp chuột phải vào trang web và nó sẽ hiển thị menu thả xuống. Sau đó chọn "kiểm tra". Nhấn tổ hợp ba phím. "Ctrl" + "Shift" + "C" để kích hoạt "Bộ chọn". Điều này sẽ cho phép bảng kiểm tra lấy thông tin của thành phần được chọn trong trang web

Bước 3. Sao chép và dán URL trang web vào trang tính

 

Lựa chọn 2. Lấy dữ liệu giá với một công thức đơn giản. nhậpXML

Bước 1. Sao chép Xpath của phần tử. Chọn yếu tố giá và Nhấp chuột phải để hiển thị menu thả xuống. Sau đó chọn “Sao chép”, chọn “Sao chép XPath”

Bước 2. Nhập công thức vào bảng tính

=IMPORTXML(“URL”, “Biểu thức XPTH”)

Lưu ý "biểu thức Xpath" là biểu thức chúng tôi vừa sao chép từ Chrome. Thay thế dấu ngoặc kép " " trong biểu thức Xpath bằng dấu ngoặc kép đơn''

 

Lựa chọn số 3. Một công thức khác để lấy dữ liệu với Google Sheets

Có một công thức khác chúng ta có thể sử dụng

=IMPORTHTML(“URL”, “QUERY”, Chỉ mục)

Với công thức này, bạn trích ra cả bảng

Làm cách nào để kéo dữ liệu từ trang web vào trang tính?

 

Tùy chọn số 4. Công cụ quét web tự động mà không cần mã hóa

Bây giờ, hãy xem cách có thể hoàn thành dễ dàng cùng một tác vụ cạo bằng công cụ quét web, Octopude. Nó cho phép bạn trích xuất nhiều dữ liệu từ trang web hơn Google Sheets và bạn không cần học các kỹ năng viết mã vì nó có chế độ tự động phát hiện. Octoparse hoạt động trên cả thiết bị Windows và Mac, hãy tải xuống và làm theo các bước bên dưới để thưởng thức

Một video về quét web với Octopude

Làm cách nào để kéo dữ liệu từ trang web vào trang tính?

Các bước để cạo dữ liệu web bằng Google Sheets Web Scraping Alternative

Bước 1. Mở Octopude sau khi cài đặt nhanh, xây dựng tác vụ mới bằng cách chọn “+Tác vụ” trong “Chế độ nâng cao”

Bước 2. Chọn Nhóm nhiệm vụ ưa thích của bạn. Sau đó nhập URL trang web mục tiêu và nhấp vào "Lưu URL". Trong trường hợp này. Trang web bán trò chơi http. // hơi nước. com/

Bước 3. Thông báo trang web Bán trò chơi được hiển thị trong phần chế độ xem tương tác Octoparse. Chúng ta cần tạo một danh sách vòng lặp để làm cho Octopude đi qua các danh sách

1. Nhấp vào một hàng của bảng (có thể là bất kỳ tệp nào trong bảng) Octopude sau đó phát hiện các mục tương tự và đánh dấu chúng bằng màu đỏ

2. Chúng ta cần trích xuất theo hàng, vì vậy hãy chọn “TR” (Table Row) từ bảng điều khiển

3. Sau khi một hàng đã được chọn, hãy chọn lệnh “Chọn tất cả thành phần phụ” từ bảng điều khiển Mẹo hành động. Chọn lệnh “Select All” để chọn tất cả các hàng trong bảng

Bước 4. Chọn “Trích xuất dữ liệu trong vòng lặp” để trích xuất dữ liệu

Bạn có thể xuất dữ liệu sang Excel, CSV, TXT hoặc các định dạng mong muốn khác. Trong khi bảng tính cần bạn sao chép và dán một cách vật lý, thì Octoparse sẽ tự động hóa quy trình. Ngoài ra, Octopude có nhiều quyền kiểm soát hơn đối với các trang web động bằng AJAX hoặc reCaptcha.  

 

Nếu bạn đang tìm một dịch vụ dữ liệu cho dự án của mình, dịch vụ dữ liệu Octopude là một lựa chọn tốt. Chúng tôi hợp tác chặt chẽ với bạn để hiểu yêu cầu dữ liệu của bạn và đảm bảo chúng tôi cung cấp những gì bạn mong muốn. Hãy trò chuyện với chuyên gia dữ liệu của Octoparse ngay bây giờ để thảo luận về cách dịch vụ quét web có thể giúp bạn nỗ lực tối đa

Bạn muốn tạo một công cụ quét web trong Google Trang tính?

Bạn có thể trích xuất thông tin cụ thể từ một trang web và hiển thị thông tin đó trong Google Trang tính của mình bằng cách sử dụng một số công thức đặc biệt của Trang tính

Ví dụ: gần đây tôi cần tìm tác giả cho một danh sách dài các bài đăng trên blog từ báo cáo Google Analytics, để xác định các tác giả ngôi sao thu hút lượt xem trang. Sẽ vô cùng tẻ nhạt khi mở từng liên kết và nhập thủ công từng tên tác giả. Rất may, có một số kỹ thuật có sẵn trong Google Trang tính để làm điều này cho chúng tôi

Web Scraper Ví dụ cơ bản

Lấy tệp giải pháp cho hướng dẫn này.
Nhấp vào đây để nhận bản sao của riêng bạn >>

Với mục đích của bài đăng này, tôi sẽ trình bày kỹ thuật này bằng cách sử dụng các bài đăng từ New York Times

Bước 1

Hãy lấy một bài báo ngẫu nhiên của New York Times và sao chép URL vào bảng tính của chúng ta, trong ô A1

Làm cách nào để kéo dữ liệu từ trang web vào trang tính?
Ví dụ URL Thời báo New York

Bước 2

Điều hướng đến trang web, trong ví dụ này là New York Times

Làm cách nào để kéo dữ liệu từ trang web vào trang tính?
Ảnh chụp màn hình Thời báo New York

Lưu ý - Tôi biết bạn đang nghĩ gì, điều này không phải là tự động sao?. ? . Nhưng trước tiên, chúng tôi cần xem cách New York Times gắn nhãn tác giả trên trang web, để sau đó chúng tôi có thể tạo một công thức để sử dụng trong tương lai

Bước 3

Di chuột qua tên tác giả và nhấp chuột phải để hiển thị menu và nhấp vào "Inspect Element" như trong ảnh chụp màn hình sau

Làm cách nào để kéo dữ liệu từ trang web vào trang tính?
Thời báo New York kiểm tra lựa chọn yếu tố

Thao tác này sẽ hiển thị cửa sổ kiểm tra nhà phát triển nơi chúng tôi có thể kiểm tra phần tử HTML cho dòng nội dung

Làm cách nào để kéo dữ liệu từ trang web vào trang tính?
Yếu tố Thời báo New York trong bảng điều khiển dành cho nhà phát triển

Bước 4

Trong cửa sổ bảng điều khiển dành cho nhà phát triển mới, có một dòng mã HTML mà chúng tôi quan tâm và đó là dòng được đánh dấu

Chúng ta sẽ sử dụng hàm IMPORTXML trong Google Trang tính, với đối số thứ hai (được gọi là “xpath-query”) truy cập phần tử HTML cụ thể ở trên

Truy vấn xpath, //span[@class='byline-author'], tìm kiếm các phần tử span có tên lớp là “byline-author”, sau đó trả về giá trị của phần tử đó, là tên của tác giả của chúng ta

Sao chép công thức này vào ô B1, bên cạnh URL của chúng tôi

=IMPORTXML(A1,"//span[@class='byline-author']")

Kết quả cuối cùng cho ví dụ về New York Times như sau

Làm cách nào để kéo dữ liệu từ trang web vào trang tính?
Ví dụ quét web cơ bản bằng cách sử dụng importXML trong Google Trang tính

Ví dụ Web Scraper với các bài viết nhiều tác giả

Hãy xem xét bài viết sau đây

http. //www. thời báo New York. com/2015/09/25/us/pope-francis-congress-speech. html

Trong trường hợp này có hai tác giả trong dòng tên tác giả. Công thức trong bước 4 ở trên vẫn hoạt động và sẽ trả về cả hai tên trong các ô riêng biệt, cái này nằm dưới cái kia

Làm cách nào để kéo dữ liệu từ trang web vào trang tính?
Hai tác giả web scrape sử dụng importXML

Điều này tốt cho trường hợp sử dụng một lần nhưng nếu dữ liệu của bạn được cấu trúc theo hàng (tôi. e. một danh sách dài các URL trong cột A), thì bạn sẽ muốn điều chỉnh công thức để hiển thị cả hai tên tác giả trên cùng một hàng

Để làm điều này, tôi sử dụng công thức Chỉ mục để giới hạn yêu cầu đối với tác giả đầu tiên, do đó, kết quả chỉ tồn tại trên hàng đó. Công thức mới là

=INDEX(IMPORTXML(A1,"//span[@class='byline-author']"),1)

Lưu ý đối số thứ hai là 1, giới hạn ở tên đầu tiên

Sau đó, trong ô liền kề, C1, tôi thêm một công thức khác để thu thập tên tác giả thứ hai

=INDEX(IMPORTXML(A1,"//span[@class='byline-author']"),2)

Điều này hoạt động bằng cách sử dụng 2 để trả về tên của tác giả ở vị trí thứ hai của mảng do hàm IMPORTXML trả về

Kết quả là

Làm cách nào để kéo dữ liệu từ trang web vào trang tính?
Hai tác giả web cạo trên cùng một hàng

Các ví dụ về trình quét web phương tiện khác

Các trang web khác sử dụng các cấu trúc HTML khác nhau, vì vậy công thức phải được sửa đổi một chút để tìm thông tin bằng cách tham chiếu thẻ HTML cụ thể, có liên quan. Một lần nữa, cách tốt nhất để làm điều này cho một trang web mới là làm theo các bước ở trên

Dưới đây là một vài ví dụ khác

Đối với Business Insider, dòng tên tác giả được truy cập bằng

=IMPORTXML(A1,"//li[@class='single-author']")

Đối với tờ Washington Post

=INDEX(IMPORTXML(A1,"//span[@itemprop='name']"),1)

Sử dụng hàm IMPORTHTML để cạo bảng trên website

Lấy tệp giải pháp cho hướng dẫn này.
Nhấp vào đây để nhận bản sao của riêng bạn >>

Xem xét trang Wikipedia sau đây, hiển thị bảng các tòa nhà cao nhất thế giới

https. // vi. wikipedia. org/wiki/Danh_sách_của_cao_tòa

Mặc dù chúng ta có thể sao chép và dán một cách đơn giản, nhưng điều này có thể gây nhàm chán cho các bảng lớn và nó không tự động. Bằng cách sử dụng công thức IMPORTHTML, chúng tôi có thể yêu cầu Google Trang tính thực hiện công việc nặng nhọc cho chúng tôi

________số 8

cung cấp cho chúng tôi đầu ra

Làm cách nào để kéo dữ liệu từ trang web vào trang tính?
Google Trang tính nhập bảng Wikipedia

Tìm số bảng (trong ví dụ này là 2) liên quan đến một chút thử và sai, kiểm tra các giá trị bắt đầu từ 1 cho đến khi bạn nhận được đầu ra mong muốn

Lưu ý, công thức này cũng hoạt động đối với danh sách trên các trang web, trong trường hợp đó, bạn thay đổi tham chiếu "bảng" trong công thức thành "danh sách"

đọc thêm

Để biết các ví dụ nâng cao hơn, hãy xem

Cách nhập thống kê mạng xã hội phổ biến vào Google Sheets

Các công thức NHẬP KHẨU khác

Nếu bạn quan tâm đến việc mở rộng kỹ thuật này thì bạn sẽ muốn xem các công thức Google Trang tính khác này