Google sheet lấy dữ liệu từ website

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

Google sheet lấy dữ liệu từ website

 

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 mã hóa 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

Google sheet lấy dữ liệu từ website

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

Có nhiều cách để bạn có thể trích xuất hoặc trích xuất nội dung của một trang web chỉ bằng Google Trang tính. Để làm như vậy, nhiều công thức theo ý của bạn. Trong bài viết này, tôi sẽ xem xét ba công thức được sử dụng rộng rãi nhất mà bạn có thể sử dụng để thu thập nội dung của các trang web mà không cần kiến ​​thức về mã hóa. Chúng ta hãy đi đến đó

Nhập dữ liệu từ các bảng trong trang web vào Google Trang tính

Một trong những cách phổ biến nhất để hiển thị khối dữ liệu lớn là sử dụng bảng. Các bảng HTML rất dễ viết mã và tạo nên mọi người có xu hướng sử dụng nó rất thường xuyên. Bạn có thể tìm thấy nó trên Wikipedia mà còn trên các trang web như Expatistan hoặc Numbeo (Ảnh chụp màn hình bên dưới)

Google sheet lấy dữ liệu từ website

Như bạn có thể thấy từ hình ảnh này, rõ ràng có hai cột. Một cho các yếu tố và một cho các giá trị

Nhìn code cũng thấy bảng HTML rõ ràng, dễ đọc, do đó dễ cạo bằng Google Sheets…

Để đưa bảng từ một trang web vào Google Trang tính, chúng ta cần xem xét kỹ hơn công thức mà chúng ta sẽ sử dụng, =IMPORTHTML, yêu cầu gì

Google sheet lấy dữ liệu từ website

Nhìn vào công thức, nó yêu cầu một URL, loại dữ liệu chúng tôi đang tìm cách trích xuất (Danh sách hoặc bảng) và chỉ mục

Looking at our Numbeo page (https://www.numbeo.com/cost-of-living/in/Paris), if you inspect the code and look for how many

elements there is, you can notice that the table that contains the data depicted two screenshots above is in the third table present in the source code.

Biết được điều đó, chúng ta có thể bắt đầu tạo công thức của mình như thế này

Google sheet lấy dữ liệu từ website

Và đây là kết quả

Google sheet lấy dữ liệu từ website

Bây giờ, có một trường hợp sử dụng tốt cho Numbeo. Chẳng hạn, bạn có thể tự động trích xuất toàn bộ dữ liệu của nhiều trang trong cùng một bảng tính

Để làm điều này, hãy tạo một cột A dành riêng cho các URL và hàng 1 cho tên các yếu tố

Google sheet lấy dữ liệu từ website

Bây giờ, thay vì chỉ sử dụng công thức IMPORTHTML như chúng tôi đã làm trước đây, chúng tôi cần điều chỉnh đầu ra của nó bằng các công thức khác, cụ thể là TRANSPOSE và INDEX. Chỉ riêng đầu ra được tạo bởi công thức IMPORTHTML là một bảng rộng ba cột và dài 65 hàng. Định dạng của bảng của chúng tôi được tạo sao cho các yếu tố phải là các cột và các tiêu đề sẽ trở thành các hàng. Công thức =TRANSPOSE thực hiện điều đó

Google sheet lấy dữ liệu từ website

Mặc dù đang đi đúng hướng, công thức này vẫn không sử dụng được cho mục đích của chúng tôi. Mục tiêu bây giờ là làm cho công thức chỉ xuất ra hàng thứ hai ở đây. Để làm như vậy, công thức INDEX sẽ trở nên hữu ích

Google sheet lấy dữ liệu từ website

Và đó là nó. Bây giờ chúng ta có thể thêm nhiều thành phố hơn vào cột URL, kéo công thức xuống và xem dữ liệu mở ra

Google sheet lấy dữ liệu từ website

Nhập dữ liệu từ bất kỳ trang web nào vào Google Trang tính

Bây giờ, nếu trang web mà bạn đang tìm kiếm bằng Google Trang tính không bao gồm các bảng và danh sách mà là mã thô, bạn có thể cần một công thức mạnh hơn một chút để hoàn thành công việc. Đáp ứng = IMPORTXML

Google sheet lấy dữ liệu từ website

Giống như IMPORTHTML, phần tử định kỳ ở đây là URL. Mặc dù vậy, Truy vấn Xpath là một khái niệm khó nắm bắt hơn. Cách mình giải thích trong bài viết hướng dẫn theo dõi kênh Youtube trên Google Sheets như sau

Để điền vào Truy vấn Xpath của hàm IMPORTXML, chúng tôi cần ba thành phần từ thông tin mà chúng tôi đang cố gắng lấy ra khỏi trang web

Chẳng hạn, hãy truy cập trang web Chứng khoán của Bloomberg trên trang này (https. //www. nở hoa. com/quote/SPX. IND) và kiểm tra xem con số in đậm này có nghĩa là gì

Google sheet lấy dữ liệu từ website

Dẫn đến điều này

Google sheet lấy dữ liệu từ website

Dựa trên kết quả này, đây là cách bạn sẽ sử dụng công thức IMPORTXML

Google sheet lấy dữ liệu từ website

Và bùm, thế là xong. Nếu bạn tuân theo cùng một logic mà chúng tôi đã sử dụng để tự động tạo kết quả cho bảng tính Numbeo, chắc chắn bạn có thể sử dụng các chỉnh sửa tương tự để thu thập tất cả các trang của cùng một trang web trong một bảng tính

Nhập nội dung JSON từ bất kỳ trang web nào vào Google Trang tính

Nếu bạn gặp khó khăn với IMPORTXML, đôi khi sẽ rất hữu ích nếu bạn xem xét cách chúng tôi có thể nhập nội dung của các nguồn JSON vào Google Trang tính

Phần đang tiến hành

Thưởng. Nhập Nguồn cấp dữ liệu RSS trong Google Trang tính

Một tính năng thú vị mà Google Trang tính cho phép là nhập nguồn cấp RSS bên trong bảng tính. Tôi chưa tìm thấy trường hợp sử dụng thực sự cho công thức này nhưng có lẽ bạn sẽ nghĩ về điều gì đó. Dù sao thì nó trông như thế nào khi được sử dụng với nguồn cấp dữ liệu RSS của riêng tôi

Google sheet lấy dữ liệu từ website

Sự kết luận

Và đó là khá nhiều nó. Tôi hy vọng bài viết này đã được khai sáng cho bạn. Nếu bạn có bất kỳ câu hỏi nào về cách sử dụng một trong những công thức này hoặc gặp phải bất kỳ sự cố nào, vui lòng để lại nhận xét trong phần thích hợp bên dưới và tôi sẽ liên hệ lại với bạn và cố gắng tìm ra giải pháp

Như mọi khi, cảm ơn bạn đã dành thời gian để xem qua bài viết của tôi và tôi sẽ gặp lại bạn sớm

Tham gia cùng các nhà tiếp thị hàng đầu đọc bản tin của chúng tôi mỗi tuần

Đặt mua

Yaniss Illoul

Chia sẽ trên Twitter

Chia sẻ trên Linkedin

Chia sẻ trên facebook

Chia sẻ trên reddit

Bạn cũng có thể thích những bài viết này

6 phản hồi

  1. phản hồi. Cách theo dõi Chiến dịch/Dự án Kickstarter bằng Google Trang tính

  2. Google sheet lấy dữ liệu từ website
    Patrick nói.

    Tháng Bảy 8, 2020 tại 1. 35 giờ chiều

    Giống như chức năng googlefinance cho giá cổ phiếu, tôi đang cố gắng sử dụng chức năng importxml để nhập xếp hạng Zacks để hiển thị xếp hạng được cập nhật trên bảng tính của mình. Hơn nữa, tôi muốn kéo chức năng này qua hàng nghìn ô khác và tất cả các cổ phiếu đều có biểu tượng riêng, bạn khuyên tôi nên kéo chức năng này qua hàng nghìn ô như thế nào?

    Cảm ơn bạn trước

    Đáp lại

  3. phản hồi. Cách nhận giá Bitcoin hoặc tiền điện tử trong Google Trang tính

    1. Google sheet lấy dữ liệu từ website
      Yaniss Illoul nói.

      Tháng Chín 9, 2021 tại 9. 15 giờ chiều

      Xin chào Bryan, cảm ơn vì nhận xét của bạn

      Vì vậy, tôi có lý do tại sao nó không hoạt động nhưng không may là giải pháp…

      Nếu bạn sử dụng công thức này, “=importxml(“https. //www. nở hoa. com/quote/SPX. IND”,”//p”)”, bạn sẽ có thể loại bỏ tất cả các đoạn văn khỏi trang web trong đối số đầu tiên. Và đây là lúc tôi nhận thấy rằng Bloomberg có thể đã cài đặt một số tính năng chống sao chép trên trang web của họ vì đây là những gì rô-bốt của Google nhìn thấy khi bạn sử dụng công thức IMPORTXML để truy xuất

      từ trang

      Google sheet lấy dữ liệu từ website

      Thật không may, có vẻ như lấy dữ liệu từ Bloomberg. com với công thức IMPORTXML không thể thực hiện được nữa. Nếu bạn quan tâm đến việc nhận giá cổ phiếu trong Google Trang tính, tôi khuyên bạn nên xem xét các trang web khác cung cấp cùng loại dữ liệu như Bloomberg. com làm và cố gắng cạo chúng thay vào đó. Hy vọng có cái nào đó không cố gắng chặn robot để bạn có thể sử dụng Google Sheets để lấy dữ liệu. )

      Một điều khác bạn có thể làm là sử dụng công thức Google Finance. Nó có thể hơi cồng kềnh khi sử dụng nhưng tôi thấy nó hoạt động khá tốt. Dưới đây là một ví dụ về cách lấy giá cổ phiếu hiện tại của Apple bằng USD. =GOOGLEFINANCE(“NASDAQ. AAPL”, “giá”)

      Tôi hy vọng điều đó sẽ giúp

      Trân trọng nhất,
      Yaniss

      Đáp lại

  4. Google sheet lấy dữ liệu từ website
    Kenny nói.

    Tháng Hai 6, 2022 tại 8. 44 giờ chiều

    Xin chào, hy vọng bạn đang làm tốt

    Tôi tự hỏi cú pháp để kéo hàng dữ liệu đầu tiên cho trang web CMEgroup và cũng là ngày cập nhật cuối cùng là gì. Tôi đã thử với cú pháp được đề xuất ở trên, nhưng có vẻ như nó không hoạt động

    https. //www. nhóm cme. com/thị trường/cổ phiếu/sp/e-mini-sandp500. định cư. html

    Khi tôi đăng bài này, trên trang này, chúng tôi hiện thấy rằng bản cập nhật cuối cùng là “Cập nhật lần cuối vào ngày 04 tháng 2 năm 2022 06. 00. 00 giờ chiều CT”