Một trình kết nối được sử dụng khi chúng ta phải sử dụng mysql với các ngôn ngữ lập trình khác. Công việc của trình kết nối mysql là cung cấp quyền truy cập vào Trình điều khiển MySQL cho ngôn ngữ được yêu cầu. Do đó, nó tạo ra kết nối giữa ngôn ngữ lập trình và Máy chủ MySQL
Để làm cho python tương tác với cơ sở dữ liệu MySQL, chúng tôi sử dụng Python-MySQL-Connector. Ở đây chúng tôi sẽ thử thực hiện các truy vấn SQL sẽ hiển thị tên của tất cả các bảng có trong cơ sở dữ liệu hoặc máy chủ
Chúng ta có thể nghe một câu thần chú rằng chúng ta không nên sử dụng các bảng HTML trong quá trình phát triển web gần như hiện đại [Faulkner, 2017]. Ví dụ: W3C khuyến nghị. "Không nên sử dụng bảng làm công cụ hỗ trợ bố cục" [W3C, 2014]. Tuy nhiên, bảng HTML là một giải pháp hoàn hảo để trình bày dữ liệu dạng bảng có cấu trúc [Collins, 2017]. Nhiều ứng dụng web vẫn sử dụng bảng HTML để hiển thị dữ liệu dạng bảng. Do đó, rất đáng để nghiên cứu các bảng HTML và trích xuất dữ liệu từ các bảng này. Một số công cụ, chẳng hạn như Excel và Power BI, có thể lấy dữ liệu từ bảng HTML. Tuy nhiên, chúng ta thường cần một giải pháp lập trình để lưu trữ dữ liệu trong cơ sở dữ liệu SQL Server. Các chuyên gia CNTT có kiến thức hạn chế về HTML và quét web muốn biết cách hoạt động của quét web. Họ cũng muốn sử dụng một phương pháp thích hợp để thu thập dữ liệu từ một bảng HTML
Dung dịchQuét web là thực hành thu thập dữ liệu từ các trang web một cách tự động. Sau đó, chúng tôi lưu trữ dữ liệu đã thu thập ở định dạng có cấu trúc, chẳng hạn như CSV hoặc JSON, mà người dùng có thể truy cập dễ dàng. Tận dụng các kỹ thuật quét web, nhiều công ty thu thập dữ liệu để hỗ trợ hoạt động kinh doanh. Đặc biệt với sự ra đời của kỷ nguyên Internet, có một lượng lớn dữ liệu web có sẵn công khai. Chúng tôi có thể sử dụng tính năng quét web để truy cập các loại bộ dữ liệu trên trang đó [Paruchuri, 2021]. Odier kết luận với 11 lý do tại sao chúng ta nên sử dụng công cụ quét web [Odier, 2018]. Chúng tôi thường thực hiện quét web theo ba bước
- Truy xuất nội dung trang web, thường ở dạng HTML
- Tìm kiếm nội dung web cho thông tin mục tiêu
- Trích xuất dữ liệu
Khi tìm kiếm các kỹ thuật quét web, chúng tôi tìm thấy nhiều tài liệu tham khảo về quét và thu thập dữ liệu web. Mọi người có thể sử dụng hai thuật ngữ này thay thế cho nhau. Tuy nhiên, quét web là trích xuất dữ liệu từ các trang web. Một ví dụ điển hình của việc quét web là trích xuất dữ liệu từ bảng HTML. Thu thập thông tin trên web là khám phá các liên kết trên World Wide Web [WWW], chẳng hạn như các công cụ tìm kiếm [Patel, 2020]. Một dự án khai thác nội dung web thường có hai nhiệm vụ. thu thập dữ liệu web và quét web. Trước tiên, chúng tôi thu thập thông tin, giống như một con nhện, để khám phá các liên kết. Tiếp theo, chúng tôi lấy nội dung tương ứng với các liên kết này. Cuối cùng, chúng tôi trích xuất nội dung và lưu trữ dữ liệu mong muốn [Kenny, 2020]
Nhiều thư viện và công cụ quét web có thể giúp chúng tôi trích xuất dữ liệu từ các trang web. Thư viện được sử dụng nhiều nhất để quét web bằng Python là "Beautiful Soup,” và "Selenium” [Wu, 2020]. Thư viện "Scrapy”, một khung thu thập dữ liệu web, là một công cụ thu thập dữ liệu web phổ biến khác dành cho những người theo học Python [Grimes, 2021]. Khi chúng ta cần xử lý các hoạt động quét web đơn giản, chẳng hạn như trích xuất dữ liệu từ các trang HTML tĩnh, thư viện "Beautiful Soup” là phù hợp. "Selenium” phù hợp với các trang web dựa trên JavaScript. Cuối cùng, thư viện "Scrapy” là một lựa chọn tuyệt vời cho các dự án trích xuất dữ liệu phức tạp [Palakollu, 2019]
Vì bài viết này tập trung vào việc truy xuất dữ liệu có cấu trúc trong các bảng HTML, nên chúng tôi sử dụng thư viện "Beautiful Soup” để quét web. Chúng tôi quan tâm đến danh sách các chương trình tự học ngôn ngữ trên trang Wikipedia [Wikipedia, 2013]. Trang web chứa danh sách có nhiều thông tin. Chúng tôi chỉ muốn trích xuất dữ liệu trong bảng HTML và sau đó lưu dữ liệu có cấu trúc vào cơ sở dữ liệu SQL Server. Chúng tôi tạo một dự án để thực hiện yêu cầu này. Dự án sử dụng chương trình Python để trích xuất thông tin từ trang web và lưu dữ liệu vào bảng cơ sở dữ liệu SQL Server
Để giải thích cách sử dụng thư viện "Beautiful Soup”, trước tiên chúng tôi giới thiệu bảng HTML trong một trang HTML đơn giản. Sau đó, chúng tôi sử dụng thư viện "Súp đẹp" để chọn từng phần tử HTML. Tiếp theo, chúng tôi khám phá hai phương pháp được sử dụng nhiều nhất, "find[]” và "find_all[]. ” Chúng tôi có thể tìm thấy một hoặc nhiều phần tử HTML bằng cách sử dụng hai phương thức này theo tên thẻ và thuộc tính của chúng. Bên cạnh 2 phương thức này, thư viện còn cho phép chúng ta điều hướng cấu trúc HTML dạng cây. Khi định vị một phần tử, chúng ta có thể truy cập anh chị em, cha mẹ, con cái và các hậu duệ khác của nó
Sau khi cạo hai trang HTML đơn giản bằng thư viện “Beautiful Soup”, chúng tôi viết một chương trình để cạo trang “Danh sách các chương trình tự học ngôn ngữ”. Trước khi kết nối với trang web mục tiêu, chúng tôi cần đảm bảo rằng chúng tôi có thể sử dụng nội dung của trang web và trang web mục tiêu cho phép chúng tôi cạo trang web. Do đó, chúng tôi xem "Điều khoản sử dụng” trên trang web và sử dụng mô-đun tích hợp "robotparser” để kiểm tra "robot. txt” tập tin. Tiếp theo, chúng tôi trích xuất dữ liệu từ trang web và lưu dữ liệu vào bảng cơ sở dữ liệu. Cuối cùng, chúng tôi cung cấp mã hoàn chỉnh của dự án này
We test all the Python scripts used in this article with Microsoft Visual Studio Community 2022 Preview 4.1 and Python 3.9 [64-bit] on Windows 10 Home 10.0 . Besides installing the Beautiful Soup library into the Python virtual environment, we also install the Requests library, an elegant and simple HTTP library [Requests, 2021]. The DBMS is the Microsoft SQL Server 2019 Developer Edition [64-bit]. The HTML editor used in the article is Notepad++ [v8.1.5], and the web browser is the Opera browser [Version:79.0.4143.50]. In addition, we use SQL Server Management Studio v18.6 to design a database table.
1 – Giới thiệu Bảng HTML
Chúng ta thường sắp xếp nội dung thành một bảng gồm các hàng và cột. Một bảng có thể cung cấp một cách đơn giản để hiển thị dữ liệu dạng bảng có cấu trúc. Người dùng có thể dễ dàng truy cập và tiêu hóa dữ liệu trong bảng. Ví dụ, chúng ta có thể sắp xếp MSSQLTips. com tác giả vào một bảng, như thể hiện trong. Bảng có bốn hàng và bốn cột. Hàng đầu tiên trong bảng đóng vai trò là tiêu đề của bảng và cột đầu tiên chứa tiêu đề hàng. Hàng cuối cùng đóng vai trò là chân trang của bảng
Tên Công ty Chức danh Tác giả Kể từGreg RobidouxEdgewood SolutionsChủ tịch2006Jeremy KadlecEdgewood SolutionsGiám đốc Công nghệ2006Nai Biao ZhouN/AN/A2018Tổng. 225 [như ngày 2021-10-08]Bảng 1 Một số thủ thuật MSSQL. com Tác giả
Vì một số ô liền kề chứa thông tin giống nhau nên chúng ta có thể hợp nhất các ô này. Sau đó, chúng tôi có được một bảng đơn giản hơn, như thể hiện trong. Ngoài ra, khi gộp ô, ta đưa thông tin vào nhóm một cách tự nhiên. Ví dụ, chúng ta có thể dễ dàng tìm thấy Greg và Jeremy làm việc trong cùng một công ty. Do đó, nhiều bảng sử dụng các ô được hợp nhất nếu có thể. Mặc dù hai bảng có dạng khác nhau nhưng chúng trình bày cùng một dữ liệu dạng bảng. Bằng cách tách các ô đã hợp nhất, chúng ta có thể chuyển đổi thành. Chúng tôi thường thực hiện loại chuyển đổi này trong quá trình quét web để có được dữ liệu có cấu trúc tốt để lưu trữ
Tên Công ty Chức danh Tác giả Kể từGreg RobidouxEdgewood SolutionsChủ tịch2006Jeremy KadlecGiám đốc Công nghệNai Biao ZhouN/A2018Tổng. 225 [như ngày 2021-10-08]Bảng 2 Một bảng có các ô được hợp nhất
1. 1 Cạo một bảng HTML đơn giản
Một bảng HTML đơn giản trông giống như sắp xếp dữ liệu trong một tập hợp các cột và hàng. Bảng HTML có thể có tiêu đề bảng, thân bảng và chân bảng giống như bảng vật lý. Bảng HTML cũng có thể coi dữ liệu trong cột đầu tiên là tiêu đề hàng. Vì mọi người chủ yếu sử dụng các chương trình máy tính để tạo bảng HTML, nên nhiều bảng HTML có cùng định dạng với bảng HTML đơn giản. Trước khi đi sâu vào các bảng HTML, trước tiên chúng ta tạo một trang HTML
1. 1. 1 Tạo một trang HTML
Chúng ta có thể sử dụng HTML, viết tắt của HyperText Markup Language, để tạo các trang web. Một số ngôn ngữ phát triển web khác, chẳng hạn như PHP, có thể tạo các phần tử HTML. Một tài liệu HTML bao gồm một cây các phần tử. Chúng tôi xác định một phần tử HTML bằng cách sử dụng thẻ mở, thẻ đóng và một số nội dung giữa hai thẻ này. Các thẻ này cho trình duyệt web biết cách hiển thị nội dung. Ví dụ: các thẻ và văn bản sau mô tả một tài liệu HTML đơn giản [WHATWG, 2021]
MSSQLTips.com Authors .large_font{ font-size:24px; } .small_font{ font-size:16px; }The Talented and Community Minded MSSQLTips.com Authors
deliver value to the global SQL Server community
Click on here for a complete list.
illustrates how the Opera browser displays the simple HTML document. A web page must start with a DOCTYPE declaration, which defines the version of the HTML code. The declaration tells the browser that the HTML code is in HTML5. The tags , , , and control the overall structure of the web page. The other tags such as
,
and here for a complete list.
here for a complete list.
0Hàm tạo Beautiful Soup lấy nội dung trang web và tên trình phân tích cú pháp để tạo một thể hiện Beautiful Soup trong đoạn mã trên. Phiên bản Beautiful Soup đại diện cho một cây phân tích cú pháp của toàn bộ trang web. Tuy nhiên, trang web có thể có nhiều thông tin và chúng tôi chỉ cần một phần nhỏ của trang web. Do đó, chúng ta có thể sử dụng một đối tượng SoupStrainer để báo cho Beautiful Soup biết những phần tử nào sẽ có trong cây phân tích cú pháp. Cách tiếp cận này có thể tiết kiệm thời gian và bộ nhớ khi chúng tôi thực hiện quét web [Zamiski, 2021]. Đoạn mã sau tạo một đối tượng SoupStrainer giới hạn cây phân tích đối với phần tử thân bảng
MSSQLTips.com Authors table, th, td { border: 1px solid black; border-collapse: collapse; } .large_font{ font-size:24px; } .small_font{ font-size:16px; }The Talented and Community Minded MSSQLTips.com Authors
deliver value to the global SQL Server community
Edgewood Solutions | President | 2006 |
Edgewood Solutions | Chief Technology Officer | 2006 |
N/A | N/A | 2018 |
Total: 225 [as the date of 2021-10-08] |
Click on here for a complete list.
11. 2 Cạo một bảng HTML với các ô được hợp nhất
Khi một bảng có nhiều hàng và cột, chúng ta có thể hợp nhất các ô liền kề có nội dung trùng lặp, như minh họa trong. Kể từ khi Greg và Jeremy làm việc trong cùng một công ty và đã trở thành MSSQLTips. com từ năm 2006, chúng ta có thể thu gọn các giá trị giống nhau vào một ô duy nhất [Penland, 2020]. Nai Biao đã không cung cấp thông tin về công ty và tiêu đề; . Khi thực hiện cạo web, chúng tôi tách các ô đã hợp nhất. Sau đó, chúng tôi có thể nhập dữ liệu có cấu trúc tốt vào các hệ thống khác
1. 2. 1 Tạo bảng HTML với các ô được hợp nhất
We can add attributes to the HTML table tags to tell the web browser how to display the table. For example, when we merge horizontal adjacent data cells into a single cell, we add the "colspan” attribute to the
MSSQLTips.com Authors table, th, td { border: 1px solid black; border-collapse: collapse; } .large_font{ font-size:24px; } .small_font{ font-size:16px; }The Talented and Community Minded MSSQLTips.com Authors
deliver value to the global SQL Server community
Edgewood Solutions | President | 2006 |
Edgewood Solutions | Chief Technology Officer | 2006 |
N/A | N/A | 2018 |
Total: 225 [as the date of 2021-10-08] |
Click on here for a complete list.
2here for a complete list.
32 – Thực hiện quét web trên trang web tĩnh
Wikipedia cung cấp danh sách các chương trình tự học [Wikipedia, 2013]. Chúng tôi muốn trích xuất thông tin và lưu trữ nó trong bảng cơ sở dữ liệu. Để lấy dữ liệu từ một trang web bên ngoài, trước tiên chúng tôi cần đọc "Điều khoản sử dụng” để đảm bảo trang web cho phép chúng tôi sử dụng thông tin của họ. Sau đó chúng ta cần kiểm tra "robot. txt” trên trang web để xem liệu chúng tôi có thể chạy chương trình quét web để trích xuất nội dung quan tâm hay không. Sau khi kiểm tra các phần tử HTML chứa dữ liệu mong muốn, chúng tôi viết chương trình Python để đọc nội dung trang web và phân tích cú pháp tài liệu HTML thành cấu trúc dạng cây. Sau đó, chúng tôi trích xuất dữ liệu thành định dạng có thể đọc được. Cuối cùng, chúng tôi lưu dữ liệu có cấu trúc tốt vào máy chủ cơ sở dữ liệu SQL
2. 1 Đọc "Điều khoản sử dụng"
Điều khoản sử dụng [hay Điều khoản dịch vụ] là thỏa thuận pháp lý giữa nhà cung cấp dịch vụ và một bên như cá nhân hoặc tổ chức muốn sử dụng dịch vụ đó. Để sử dụng dịch vụ, các bên cần đồng ý với các điều khoản dịch vụ này. Wikipedia đã đăng Điều khoản sử dụng trên trang web https. //nền tảng. wikimedia. org/wiki/Terms_of_Use/vi, như minh họa trong. Khi viết bài này, chúng tôi được tự do chia sẻ và sử dụng lại các bài viết của họ và các phương tiện khác theo giấy phép miễn phí và mở
here for a complete list.
42. 3 Kiểm tra các phần tử HTML
Chúng tôi muốn cạo bảng HTML trên trang web. https. // vi. wikipedia. org/wiki/List_of_language_self-study_programs, như minh họa trong. Bảng có năm cột và một số ô trống. Chúng ta cần tìm một mã định danh duy nhất của bảng HTML để có thể sử dụng phương thức "find[]” trong thư viện Beautiful Soup. Tiếp theo, chúng ta nên nhìn vào cấu trúc bảng. Chúng tôi cũng cần kiểm tra xem có HTML không chuẩn nào không, điều này có thể dẫn đến kết quả đầu ra không mong muốn
here for a complete list.
2. 3. 2 Xem mã nguồn
Để hiểu rõ hơn về cấu trúc bảng HTML, chúng ta xem mã nguồn của trang. Chúng tôi nhấp chuột phải vào trang để hiển thị menu ngữ cảnh, như được hiển thị trong. Sau khi chọn mục menu "Nguồn trang", chúng ta có thể xem mã nguồn của trang, như được hiển thị trong. Vì bảng có thể sắp xếp được nên các hàm JavaScript phía máy khách sẽ kiểm soát phần đầu của bảng. Chúng ta có thể quan sát thấy rằng thuộc tính lớp của bảng trong nguồn trang khác với bảng kiểm tra phần tử. Nguyên nhân của sự khác biệt nằm ngoài bài viết này. Chúng tôi sử dụng tên lớp được cung cấp trong nguồn trang;
here for a complete list.
6Không phải lúc nào chúng tôi cũng cần làm sạch hoặc chuyển đổi dữ liệu trong quy trình quét web. Thay vào đó, chúng ta có thể lưu dữ liệu trong bảng phân tầng để xử lý thêm. Trong trường hợp đó, chúng tôi làm cho quá trình quét web trở nên độc lập với quy trình xử lý dữ liệu và giảm thiểu rủi ro ngoại lệ trong quá trình quét web. Bảng phân tầng hoạt động giống như bộ đệm trang web lưu dữ liệu thô vào bảng cơ sở dữ liệu [Hajba, 2018]
2. 5 Lưu trữ dữ liệu vào cơ sở dữ liệu SQL Server
Bảng HTML có năm cột, tôi. e. , Chương trình tự học, Số lượng ngôn ngữ được dạy, Ngôn ngữ giao diện, Phương tiện và Mô hình kinh doanh [Wikipedia, 2013]. Kiểm tra bảng HTML, chúng tôi thấy bảng không được chuẩn hóa. Một ô dữ liệu có thể có các thuộc tính đa giá trị. Ví dụ: ô phương tiện chứa nhiều phương tiện. Chúng tôi có thể lưu dữ liệu thô vào bảng cơ sở dữ liệu chưa chuẩn hóa và sử dụng quy trình khác để xử lý dữ liệu chưa chuẩn hóa. Trong bài tập này, chúng tôi chỉ lưu dữ liệu vào bảng cơ sở dữ liệu chưa chuẩn hóa được gọi là bảng phân tầng
2. 5. 1 Thiết kế bảng cơ sở dữ liệu
Tạo bảng chuẩn hóa là không cần thiết vì chúng tôi chỉ muốn lưu dữ liệu thô vào bảng cơ sở dữ liệu. Như hình , chúng ta thiết kế một bảng cơ sở dữ liệu để biểu diễn bảng HTML trên trang web. Chúng tôi sử dụng các chuỗi rỗng trong SQL để mô tả các ô của bảng trống. Chúng tôi cũng đặt cột "date_extracted” thành "GETDATE []” theo mặc định để giá trị của một hàng mới sẽ chứa dấu thời gian khi dữ liệu được tạo dữ liệu trong bảng cơ sở dữ liệu. Sau đó, chúng tôi cung cấp mã SQL để tạo bảng cơ sở dữ liệu
here for a complete list.
72. 5. 2 Lưu dữ liệu bảng HTML
Chúng tôi sử dụng mô hình kết nối/con trỏ để thực hiện các thao tác với cơ sở dữ liệu. Trong mô hình này, đối tượng kết nối có thể kết nối với cơ sở dữ liệu, gửi thông tin, tạo đối tượng con trỏ mới và xử lý các lần xác nhận và khôi phục [Mitchell, 2018]. Mặt khác, một đối tượng con trỏ có thể thực thi các câu lệnh SQL, theo dõi trạng thái kết nối và di chuyển qua các tập kết quả. Ví dụ: để chèn dữ liệu vào bảng cơ sở dữ liệu, trước tiên chúng ta nên kết nối với cơ sở dữ liệu SQL Server; . Tiếp theo, chúng ta sử dụng phương thức "executemany[]" của đối tượng con trỏ để thêm nhiều hàng vào bảng cơ sở dữ liệu [Zhou, 2021]. Đoạn mã sau minh họa quá trình thêm danh sách các bộ dữ liệu vào bảng cơ sở dữ liệu. hiển thị các hàng dữ liệu được lấy từ bảng cơ sở dữ liệu
MSSQLTips.com Authors table, th, td { border: 1px solid black; border-collapse: collapse; } .large_font{ font-size:24px; } .small_font{ font-size:16px; }The Talented and Community Minded MSSQLTips.com Authors
deliver value to the global SQL Server community
Edgewood Solutions | President | 2006 |
Edgewood Solutions | Chief Technology Officer | 2006 |
N/A | N/A | 2018 |
Total: 225 [as the date of 2021-10-08] |
Click on here for a complete list.
8Hình 10 Dữ liệu bảng HTML được lưu trữ trong bảng cơ sở dữ liệu SQL Server
3 – Mã hoàn chỉnh
Chúng tôi viết một chương trình Python để cạo bảng HTML và lưu trữ dữ liệu vào bảng cơ sở dữ liệu SQL Server. Chương trình sử dụng thư viện Python Requests để lấy nội dung HTML trên trang web. Sau đó, chúng tôi sử dụng thư viện Beautiful Soup để phân tích nội dung trang web và tìm kiếm các phần tử bảng HTML. Tiếp theo, chúng tôi trích xuất dữ liệu mong muốn vào danh sách các bộ dữ liệu Python. Cuối cùng, chúng tôi sử dụng thư viện pyodbc để lưu danh sách Python vào bảng cơ sở dữ liệu. Nói chung, chương trình bao gồm năm bước này
- Đọc nội dung trang web
- Sử dụng một thể hiện của lớp Beautiful Soup để phân tích nội dung trang web
- Tìm kiếm phần tử bảng trong nội dung được phân tích cú pháp
- Lặp qua phần tử thân bảng để tải dữ liệu vào danh sách các bộ dữ liệu Python
- Lưu trữ dữ liệu bảng HTML vào Cơ sở dữ liệu máy chủ SQL
Bấm vào đây để mã hoàn chỉnh. Để chạy chương trình, chúng ta nên gán giá trị đúng cho các biến hằng này. DBSERVER, DATABASE_NAME, UID và NKT
Tóm lược
Với Web scraping [còn gọi là trích xuất nội dung web], chúng ta có thể truy cập dữ liệu gần như không giới hạn. Khi khám phá Internet để biết thông tin, chúng tôi thấy rằng nhiều trang web sử dụng bảng HTML để trình bày dữ liệu dạng bảng. Bài viết đề cập đến quy trình từng bước để tải xuống dữ liệu từ bảng HTML và lưu trữ dữ liệu vào bảng cơ sở dữ liệu. Chúng tôi bắt đầu với việc giới thiệu một trang HTML đơn giản và sau đó trình bày một trang web có bảng HTML. Tài liệu HTML thể hiện cấu trúc dạng cây, giúp chúng tôi điều hướng tất cả các phần tử HTML. Chúng tôi cũng đã thảo luận về một bảng HTML với các ô được hợp nhất. Sau khi khám phá một số phương pháp và tính năng thiết yếu được cung cấp trong thư viện Beautiful Soup, chúng tôi đã sử dụng thư viện để trích xuất nội dung từ các bảng HTML này
Để minh họa cách chúng tôi trích xuất một bảng HTML từ một trang web, chúng tôi đã tạo một dự án để tải xuống dữ liệu từ một trang Wikipedia. Trước khi cạo trang web, chúng tôi đọc "Điều khoản sử dụng" để xác nhận rằng chúng tôi có thể sử dụng nội dung trên trang. Tiếp theo, chúng tôi đã kiểm tra "robot. txt” để đảm bảo chúng tôi có thể sử dụng chương trình máy tính để xóa trang. Sau đó, chúng tôi đã sử dụng thư viện Yêu cầu Python để truy xuất nội dung web từ trang Wikipedia
Chúng tôi đã sử dụng phương thức "find[]” trong thư viện Beautiful Soup để xác định vị trí của phần tử bảng. Tiếp theo, chúng tôi điều hướng qua thuộc tính "trẻ em", một tập hợp các phần tử con, để tìm dữ liệu mong muốn. Sau đó, chúng tôi đã lưu dữ liệu vào danh sách hai chiều, đại diện cho dữ liệu bảng HTML. Cuối cùng, chúng tôi đã lưu danh sách Python vào bảng cơ sở dữ liệu SQL Server
Thẩm quyền giải quyết
ĐẹpSúp. [2020]. súp đẹp. https. //www. vụn vặt. com/software/BeautifulSoup
Collins, J. m. [2017]. HTML5 chuyên nghiệp với CSS, JavaScript và Đa phương tiện. Phát triển trang web hoàn chỉnh và các phương pháp hay nhất. New York, NY. ấn
Faulkner, S. [2017]. Này, vẫn ổn khi sử dụng bảng. https. // hoa hồng adrian. com/2017/11/hey-its-still-ok-to-use-tables. html
Gaurav, S. [2019]. Trích xuất dữ liệu từ HTML bằng BeautifulSoup, https. //www. đa giác. com/guides/extracting-data-html-beansoup
Grimes, J. [2021]. phế liệu Vs. BeautifulSoup Vs. Selenium để quét web. https. //www. đánh giá proxy tốt nhất. com/scrapy-vs-selenium-vs-beautiesoup-for-web-scraping
Hajba, L. g. [2018]. Quét trang web bằng Python bằng BeautifulSoup và Scrapy. New York, NY. ấn
Howe, S. [2014]. Học cách viết mã Html và CSS. https. //học hỏi. sà lan. com/html-css
Kenny, C. [2020]. Sự khác biệt giữa quét web và thu thập dữ liệu web là gì?. https. //www. hợp tử. com/learning/difference-between-web-scraping-and-web-crawling/
Odier, G. [2018]. 11 lý do tại sao bạn nên sử dụng quét web. https. //www. dữ liệu đội trưởng. co/blog/11-reasons-why-use-web-scraping
Palakollu, M. S. [2019]. Scrapy Vs Selenium Vs Beautiful Soup cho Web Scraping. https. //Trung bình. com/analytics-vidhya/scrapy-vs-selenium-vs-bean-soup-for-web-scraping-24008b6c87b8
Paruchuri, V. [2021]. hướng dẫn. Quét web bằng Python bằng cách sử dụng Beautiful Soup. https. //www. yêu cầu dữ liệu. io/blog/web-scraping-python-using-happy-soup
Patel, H. [2020]. Quét web so với thu thập dữ liệu web. Có gì khác biệt?. https. //dzone. com/articles/web-scraping-vs-web-crawling-whats-the-sự khác biệt
Penland, J. [2020]. Hướng dẫn dễ dàng để tạo các bảng HTML giúp tăng giá trị cho các trang. https. //html. com/bảng/hướng dẫn
PYTutorial. [2021]. Hiểu cách sử dụng thuộc tính trong Beautifulsoup Python. https. // pytutorial. com/beautiesoup-attribute#beautiesoup-find-attribute-contains-a-number
yêu cầu. [2021]. Bắt đầu nhanh. https. // tài liệu. yêu cầu python. org/vi/mới nhất/người dùng/khởi động nhanh
Mitchell, R. [2018]. Quét web bằng Python, Phiên bản 2 nd . Sebastopol, CA. Truyền thông O'Reilly.
Venmani, A. Đ. [2020]. Yêu cầu trong Python [Hướng dẫn]. https. //www. máy học cộng. com/python/request-in-python
W3C. [2014]. HTML5 Từ vựng và các API liên quan cho HTML và XHTML. https. //www. w3. org/TR/2014/REC-html5-20141028/tabular-data. html
CÁI GÌ. [2021]. HTML. Mức sống — Cập nhật lần cuối ngày 8 tháng 10 năm 2021. https. //html. thông số kỹ thuật. cái gì. org/multipage/giới thiệu. html
Ngô. [2020]. Khái niệm cơ bản về quét web. Cách cạo dữ liệu từ một trang web bằng Python. https. // hướng tới khoa học dữ liệu. com/web-scraping-basics-82f8b5acd45c
Wikipedia. [2013]. Danh sách các chương trình tự học ngôn ngữ. https. // vi. wikipedia. org/wiki/List_of_language_self-study_programs
Zamiski, J. [2021]. Sử dụng SoupStrainer của Beautiful Soup để tiết kiệm thời gian và bộ nhớ khi quét web. https. //Trung bình. com/codex/using-beauty-soups-soupstrainer-to-save-time-and-memory-when-web-scraping-ea1dbd2e886f
Zhou, N. [2021]. Thao tác CRUD trong SQL Server bằng Python. https. //www. mssqltips. com/sqlservertip/6694/crud-operations-in-sql-server-using-python