Cách truy cập phần tử html trong python

Phân tích cú pháp có nghĩa là chia tệp hoặc đầu vào thành các phần thông tin/dữ liệu có thể được lưu trữ cho mục đích sử dụng cá nhân của chúng tôi trong tương lai. Đôi khi, chúng tôi cần dữ liệu từ một tệp hiện có được lưu trữ trên máy tính của mình, kỹ thuật phân tích cú pháp có thể được sử dụng trong những trường hợp như vậy. Phân tích cú pháp bao gồm nhiều kỹ thuật được sử dụng để trích xuất dữ liệu từ một tệp. Những điều sau đây bao gồm Sửa đổi tệp, Xóa thứ gì đó khỏi tệp, In dữ liệu, sử dụng phương pháp tạo con đệ quy để duyệt qua dữ liệu từ tệp, tìm con của thẻ, quét web từ liên kết để trích xuất thông tin hữu ích, v.v.

Sửa đổi tập tin

Sử dụng phương pháp làm đẹp để sửa đổi mã HTML từ- https. // lễ hội-knuth-1279a2. netlify. ứng dụng/, trông đẹp hơn. Prettify làm cho mã trông ở dạng tiêu chuẩn giống như mã được sử dụng trong Mã VS

Thí dụ

Python3




# Importing BeautifulSoup class from the bs4 module

from bs4import BeautifulSoup

 

# Importing the HTTP library

import requests as req

 

from0

from1from2 from3____14from5

 

from7

from8from2 bs40bs41from5

 

bs44

bs45bs46

đầu ra

Xóa thẻ

Có thể xóa thẻ bằng cách sử dụng phương thức phân tách và phương thức select_one với bộ chọn CSS để chọn và sau đó xóa phần tử thứ hai khỏi thẻ li, sau đó sử dụng phương thức prettify để sửa đổi mã HTML khỏi chỉ mục. tệp html

Thí dụ

Tệp được sử dụng

Python3




# Importing BeautifulSoup class from the bs4 module

from bs4import BeautifulSoup

 

import3

import4from2 import6_______37import8import9BeautifulSoup0from5

 

BeautifulSoup3

BeautifulSoup4from2 BeautifulSoup6

 

from7

from8from2  1____21from5

 

 5

 6from2  8 9from5

 

# Importing the HTTP library2

# Importing the HTTP library3

 

# Importing the HTTP library5

bs45# Importing the HTTP library7

đầu ra

Tìm thẻ

Thẻ có thể được tìm thấy bình thường và được in bình thường bằng print[]

Thí dụ

Python3




# Importing BeautifulSoup class from the bs4 module

from bs4import BeautifulSoup

 

import3

import4from2 import6_______37import8import9BeautifulSoup0from5

 

BeautifulSoup3

BeautifulSoup4from2 BeautifulSoup6

 

from7

 0_______12  1____21from5

 

 6

bs45 8

bs45from00

bs45from02

bs45from04

bs45from06

đầu ra

Thẻ duyệt

Phương thức recursiveChildGenerator được sử dụng để duyệt qua các thẻ, tìm theo cách đệ quy tất cả các thẻ trong các thẻ từ tệp

Thí dụ

Python3




# Importing BeautifulSoup class from the bs4 module

from bs4import BeautifulSoup

 

import3

import4from2 import6_______37import8import9BeautifulSoup0from5

 

BeautifulSoup3

BeautifulSoup4from2 BeautifulSoup6

 

from7

from8from2  1____21from5

 

from35

from36 from37from38 from39

from40from41

from42from43 from44

from45from46

from47bs45____149

đầu ra

Phân tích thuộc tính tên và văn bản của thẻ

Sử dụng thuộc tính tên của thẻ để in tên của nó và thuộc tính văn bản để in văn bản của nó cùng với mã của thẻ- ul từ tệp

Thí dụ

Python3




# Importing BeautifulSoup class from the bs4 module

from bs4import BeautifulSoup

 

import3

import4from2 import6_______37import8import9BeautifulSoup0from5

 

BeautifulSoup3

BeautifulSoup4from2 BeautifulSoup6

 

from7

from8from2  1____21from5

 

from78

bs45from80from81from5

đầu ra

Tìm phần tử con của thẻ

Thuộc tính Children được sử dụng để lấy phần tử con của thẻ. Thuộc tính Children trả về 'các thẻ có khoảng cách' giữa chúng, chúng tôi đang thêm một điều kiện- e. tên không phải là Không để chỉ in tên của các thẻ từ tệp

Thí dụ

Python3




# Importing BeautifulSoup class from the bs4 module

from bs4import BeautifulSoup

 

import3

import4from2 import6_______37import8import9BeautifulSoup0from5

 

BeautifulSoup3

BeautifulSoup4from2 BeautifulSoup6

 

from7

from8from2  1____21from5

 

bs411

bs412from2 bs414

 

bs416

bs417

bs418from2 bs420from36 bs422from38 bs424from43 bs426bs427 bs428 bs429bs430

 

bs432

bs45bs434

đầu ra

Tìm trẻ em ở tất cả các cấp của thẻ

Thuộc tính Hậu duệ được sử dụng để lấy tất cả các hậu duệ [Trẻ em ở mọi cấp độ] của một thẻ từ tệp

Thí dụ

Python3




# Importing BeautifulSoup class from the bs4 module

from bs4import BeautifulSoup

 

import3

import4from2 import6_______37import8import9BeautifulSoup0from5

 

BeautifulSoup3

BeautifulSoup4from2 BeautifulSoup6

 

from7

from8from2  1____21from5

 

bs411

bs464____12 bs466

 

bs468

bs418from2 bs420from36 bs422from38 bs475from43 bs426bs427 bs428 bs429bs430

 

bs432

bs45bs434

đầu ra

Tìm tất cả các yếu tố của thẻ

Sử dụng find_all[]

Phương thức find_all được sử dụng để tìm tất cả các phần tử [tên và văn bản] bên trong thẻ p từ tệp

Thí dụ

Python3




# Importing BeautifulSoup class from the bs4 module

from bs4import BeautifulSoup

 

import3

import4from2 import6_______37import8import9BeautifulSoup0from5

 

BeautifulSoup3

BeautifulSoup4from2 BeautifulSoup6

 

from7

from8from2  1____21from5

 

import14

from36 import16from38 import18import19import20

 

from40import23

from42bs45______180import27from5

đầu ra

Bộ chọn CSS để tìm các phần tử.  

Sử dụng phương thức select để sử dụng bộ chọn CSS để tìm phần tử thứ hai từ thẻ li từ tệp

Làm cách nào để truy cập dữ liệu HTML bằng Python?

Cài đặt BeautifulSoup. Sử dụng trình quản lý gói Anaconda để cài đặt gói cần thiết và các gói phụ thuộc của nó. .
Đọc tệp HTML. Trong ví dụ dưới đây, chúng tôi yêu cầu một url được tải vào môi trường python. .
Trích xuất giá trị thẻ. .
Trích xuất tất cả các thẻ

Làm cách nào để tìm nạp nội dung HTML bằng Python?

Giải pháp đơn giản nhất là như sau. .
yêu cầu nhập khẩu. in [yêu cầu. nhận được [url = 'https. //Google. com']. chữ].
nhập urllib. yêu cầu như r. trang = r. urlopen['https. //Google. com'].
nhập urllib. yêu cầu như r. trang = r. urlopen['https. //Google. com'].
.

Chủ Đề