Lưu tệp HTML Python

Chúng tôi có thể sử dụng bất kỳ trình soạn thảo văn bản nào để tạo và lưu tệp HTML. Trong bài viết này, chúng ta hãy lấy một ví dụ về trình soạn thảo văn bản Notepad và trình bày quy trình từng bước để lưu và mở tệp HTML. Các trình soạn thảo văn bản khác cũng sẽ có quy trình tương tự

Các trình chỉnh sửa mã khác để sử dụng để viết mã HTML

Notepad là một trong những trình soạn thảo mã cơ bản có sẵn trong Windows

Ngày nay, chúng ta có nhiều trình soạn thảo mã như VSCode, Notepad++, Sublime text, v.v. , cung cấp cho chúng tôi một số tính năng bổ sung cùng với việc viết mã

Các trang web được viết bằng HTML, có nghĩa là mỗi trang web là một tài liệu có cấu trúc. Đôi khi sẽ thật tuyệt nếu có được một số dữ liệu từ chúng và bảo toàn cấu trúc trong khi chúng tôi đang ở đó. Các trang web không phải lúc nào cũng cung cấp dữ liệu của họ ở các định dạng thoải mái như CSV hoặc JSON

Đây là nơi quét web đến. Quét web là cách sử dụng chương trình máy tính để sàng lọc một trang web và thu thập dữ liệu bạn cần ở định dạng hữu ích nhất cho bạn đồng thời bảo toàn cấu trúc của dữ liệu

lxml và Yêu cầu¶

lxml là một thư viện khá phong phú được viết để phân tích cú pháp các tài liệu XML và HTML rất nhanh, thậm chí xử lý các thẻ bị rối trong quá trình này. Chúng tôi cũng sẽ sử dụng mô-đun Yêu cầu thay vì mô-đun urllib2 đã được tích hợp sẵn do những cải tiến về tốc độ và khả năng đọc. Bạn có thể dễ dàng cài đặt cả hai bằng cách sử dụng

page = requests.get['//econpy.pythonanywhere.com/ex/001.html']
tree = html.fromstring[page.content]
3 và
page = requests.get['//econpy.pythonanywhere.com/ex/001.html']
tree = html.fromstring[page.content]
4

Hãy bắt đầu với việc nhập khẩu

from lxml import html
import requests

Tiếp theo, chúng tôi sẽ sử dụng

page = requests.get['//econpy.pythonanywhere.com/ex/001.html']
tree = html.fromstring[page.content]
5 để truy xuất trang web có dữ liệu của chúng tôi, phân tích cú pháp bằng mô-đun
page = requests.get['//econpy.pythonanywhere.com/ex/001.html']
tree = html.fromstring[page.content]
6 và lưu kết quả trong
page = requests.get['//econpy.pythonanywhere.com/ex/001.html']
tree = html.fromstring[page.content]
0

page = requests.get['//econpy.pythonanywhere.com/ex/001.html']
tree = html.fromstring[page.content]

[Chúng tôi cần sử dụng

page = requests.get['//econpy.pythonanywhere.com/ex/001.html']
tree = html.fromstring[page.content]
1 thay vì
page = requests.get['//econpy.pythonanywhere.com/ex/001.html']
tree = html.fromstring[page.content]
2 vì
page = requests.get['//econpy.pythonanywhere.com/ex/001.html']
tree = html.fromstring[page.content]
3 hoàn toàn mong đợi
page = requests.get['//econpy.pythonanywhere.com/ex/001.html']
tree = html.fromstring[page.content]
4 làm đầu vào. ]

page = requests.get['//econpy.pythonanywhere.com/ex/001.html']
tree = html.fromstring[page.content]
0 hiện chứa toàn bộ tệp HTML trong một cấu trúc cây đẹp mắt mà chúng ta có thể thực hiện theo hai cách khác nhau. XPath và CSSSelect. Trong ví dụ này, chúng tôi sẽ tập trung vào cái trước

XPath là một cách định vị thông tin trong các tài liệu có cấu trúc như tài liệu HTML hoặc XML. Giới thiệu tốt về XPath có trên W3Schools

Ngoài ra còn có nhiều công cụ khác nhau để lấy XPath của các phần tử, chẳng hạn như FireBug cho Firefox hoặc Trình kiểm tra Chrome. Nếu đang sử dụng Chrome, bạn có thể nhấp chuột phải vào một phần tử, chọn 'Kiểm tra phần tử', đánh dấu mã, nhấp chuột phải lần nữa và chọn 'Sao chép XPath'

Sau khi phân tích nhanh, chúng tôi thấy rằng trong trang của chúng tôi, dữ liệu được chứa trong hai phần tử – một là div có tiêu đề 'tên người mua' và phần còn lại là một khoảng có lớp 'giá mặt hàng'

________số 8

Biết được điều này, chúng ta có thể tạo truy vấn XPath chính xác và sử dụng hàm lxml

page = requests.get['//econpy.pythonanywhere.com/ex/001.html']
tree = html.fromstring[page.content]
6 như thế này

page = requests.get['//econpy.pythonanywhere.com/ex/001.html']
tree = html.fromstring[page.content]
0

Hãy xem những gì chúng ta có chính xác

page = requests.get['//econpy.pythonanywhere.com/ex/001.html']
tree = html.fromstring[page.content]
1

page = requests.get['//econpy.pythonanywhere.com/ex/001.html']
tree = html.fromstring[page.content]
2

Xin chúc mừng. Chúng tôi đã loại bỏ thành công tất cả dữ liệu chúng tôi muốn từ một trang web bằng cách sử dụng lxml và Yêu cầu. Chúng tôi lưu nó trong bộ nhớ dưới dạng hai danh sách. Bây giờ chúng ta có thể làm tất cả những thứ hay ho với nó. chúng ta có thể phân tích nó bằng Python hoặc chúng ta có thể lưu nó vào một tệp và chia sẻ nó với mọi người

Một số ý tưởng thú vị hơn để suy nghĩ là sửa đổi tập lệnh này để lặp lại qua các trang còn lại của tập dữ liệu mẫu này hoặc viết lại ứng dụng này để sử dụng các luồng nhằm cải thiện tốc độ

Làm cách nào để lưu HTML bằng Python?

Python3 .
GFG-1. tệp html được tạo trong thư mục
Kiểm tra dữ liệu đầu ra của GFG-1. tệp html
Dữ liệu đầu vào được lưu vào GFG-2. tệp html
Kiểm tra dữ liệu đầu ra của GFG-2. tệp html

Làm cách nào để thêm tệp HTML trong Python?

Sử dụng open[file, mode] với chế độ là "w" để tạo tệp tệp HTML mới hoặc ghi vào tệp hiện có. sử dụng tập tin. write[data] để ghi dữ liệu vào tệp.

Chúng tôi có thể lưu tệp trong HTML không?

Bước 3. Lưu trang HTML . Chọn Tệp > Lưu dưới dạng trong menu Notepad . Đặt tên tệp là "index. htm" và đặt mã hóa thành UTF-8 [là mã hóa ưu tiên cho các tệp HTML]. Mẹo. Bạn có thể sử dụng một trong hai. htm hoặc. html dưới dạng phần mở rộng tệp.

Chủ Đề