Làm cách nào để biết đó là html hay xml?

Mục tiêu của chương này là cung cấp cho bạn phần giới thiệu cơ bản về XML và HTML, để bạn có thể nắm bắt tốt về định dạng này cho chương tiếp theo. Web và HTTP

HTML không phải là ngôn ngữ lập trình; . Về mặt kỹ thuật, HTML là một phương ngữ XML

Giả sử chúng tôi truy cập trang web chính thức của R (ảnh chụp màn hình bên dưới)

Làm cách nào để biết đó là html hay xml?

Hình 40. 2. Trang chủ của dự án R

Các trang tương tác và phong phú về mặt trực quan mà chúng ta thấy trên Web dựa trên các tệp văn bản thuần túy được gọi là tệp nguồn. Để xem nội dung HTML thực đằng sau trang chủ của R, bạn cần có quyền truy cập vào tùy chọn mã nguồn trong trình duyệt của mình. Nếu bạn đang sử dụng Chrome, hãy chuyển đến tab Xem trong thanh menu, sau đó chọn tùy chọn Nhà phát triển và cuối cùng nhấp vào Xem nguồn

Làm cách nào để biết đó là html hay xml?

Hình 40. 3. Xem mã nguồn của trang web trong Chrome

Nếu chúng tôi xem tệp nguồn phía sau trang chủ của R, chúng tôi sẽ khám phá nội dung HTML thực tế, được mô tả trong hình ảnh bên dưới

Làm cách nào để biết đó là html hay xml?

Hình 40. 4. Mã nguồn HTML đằng sau trang chủ của dự án R

Như bạn có thể thấy, trang web được trình duyệt của bạn hiển thị khéo léo, biết chính xác cách xử lý nội dung trong tệp nguồn. Nếu bạn không quen với HTML, một số (nếu không muốn nói là hầu hết) văn bản sẽ có vẻ vô nghĩa đối với bạn ngay bây giờ. Nhưng tất cả đều có cấu trúc và ý nghĩa riêng

Những gì bạn thấy trên trình duyệt là kết quả của các tài nguyên được cung cấp bởi máy chủ lưu trữ trang web của R. Về mặt kỹ thuật, các tài nguyên phải bao gồm tệp

wiki <- 'https://en.wikipedia.org/wiki/Men%27s_long_jump_world_record_progression'

# this fails
tbls <- readHTMLTable(wiki)
7, cộng với các tệp khác (tệp biểu định kiểu và tệp hình ảnh)

Làm cách nào để biết đó là html hay xml?

Hình 40. 5. Các tài nguyên khác được liên kết trong trang chủ

Cụ thể, các tài nguyên sau (các loại tệp khác nhau) có thể được xác định

  • wiki <- 'https://en.wikipedia.org/wiki/Men%27s_long_jump_world_record_progression'
    
    # this fails
    tbls <- readHTMLTable(wiki)
    7
  • wiki <- 'https://en.wikipedia.org/wiki/Men%27s_long_jump_world_record_progression'
    
    # this fails
    tbls <- readHTMLTable(wiki)
    9
  • wiki <- 'https://en.wikipedia.org/wiki/Men%27s_long_jump_world_record_progression'
    
    # this fails
    tbls <- readHTMLTable(wiki)
    0
  • wiki <- 'https://en.wikipedia.org/wiki/Men%27s_long_jump_world_record_progression'
    
    # this fails
    tbls <- readHTMLTable(wiki)
    1
  • wiki <- 'https://en.wikipedia.org/wiki/Men%27s_long_jump_world_record_progression'
    
    # this fails
    tbls <- readHTMLTable(wiki)
    2
  • wiki <- 'https://en.wikipedia.org/wiki/Men%27s_long_jump_world_record_progression'
    
    # this fails
    tbls <- readHTMLTable(wiki)
    3

Hãy nghiên cứu cấu trúc của một tài liệu HTML cơ bản. Dưới đây là sơ đồ với nội dung đơn giản hóa của trang web của R

Làm cách nào để biết đó là html hay xml?

Hình 40. 6. Cấu trúc tài liệu HTML

Dòng văn bản đầu tiên là khai báo loại tài liệu, xác định tài liệu này là tài liệu HTML5. Sau đó, chúng ta có phần tử html là phần tử gốc của tài liệu và nó chứa tất cả các phần tử khác

Trong phần tử html, chúng tôi tìm thấy hai phần tử. đầu và cơ thể. Phần tử đầu chứa thông tin mô tả như tiêu đề, biểu định kiểu, tập lệnh và thông tin meta khác. Yếu tố bắt buộc bên trong đầu là tiêu đề

Phần tử nội dung chứa mọi thứ được hiển thị trong trình duyệt

Bạn không cần phải ghi nhớ tất cả các thành phần (hoặc thẻ) HTML có thể, nhưng điều quan trọng là bạn phải tìm hiểu về cú pháp và cấu trúc của chúng. Vì vậy, hãy mô tả giải phẫu của các phần tử html

Đây là một ví dụ với một

phần tử đó là phần tử đoạn văn. Thẻ HTML có thẻ mở bao gồm tên thẻ được bao quanh bởi dấu ngoặc nhọn, nghĩa là

nhân vật

Thông thường, bạn đặt các thẻ xung quanh một số văn bản nội dung. Ở cuối thẻ có thẻ đóng, trong trường hợp này

Bạn biết đó là thẻ đóng vì nó đứng sau nội dung và có dấu gạch chéo
wiki <- 'https://en.wikipedia.org/wiki/Men%27s_long_jump_world_record_progression'

# this fails
tbls <- readHTMLTable(wiki)
0 trước tên
wiki <- 'https://en.wikipedia.org/wiki/Men%27s_long_jump_world_record_progression'

# this fails
tbls <- readHTMLTable(wiki)
1. Tất cả các thẻ đóng đều có dấu gạch chéo trong đó

Làm cách nào để biết đó là html hay xml?

Hình 40. 7. Giải phẫu các phần tử html

Không phải tất cả các thẻ đều ở dạng một cặp thẻ phù hợp (thẻ mở và thẻ đóng). Có một số thẻ không có thẻ đóng. Có lẽ thẻ phổ biến nhất của loại này là thẻ

wiki <- 'https://en.wikipedia.org/wiki/Men%27s_long_jump_world_record_progression'

# this fails
tbls <- readHTMLTable(wiki)
2 được sử dụng cho hình ảnh. Một ví dụ là thẻ
wiki <- 'https://en.wikipedia.org/wiki/Men%27s_long_jump_world_record_progression'

# this fails
tbls <- readHTMLTable(wiki)
2 cho tệp logo R trong trang chủ của dự án R

Làm cách nào để biết đó là html hay xml?

Như bạn có thể thấy, thẻ

wiki <- 'https://en.wikipedia.org/wiki/Men%27s_long_jump_world_record_progression'

# this fails
tbls <- readHTMLTable(wiki)
2 không có thẻ đóng;

Một số phần tử có các thuộc tính cho phép bạn chỉ định thông tin bổ sung về một phần tử. Các thuộc tính được khai báo bên trong thẻ mở bằng các từ khóa đặc biệt. Chúng tôi gán giá trị cho các thuộc tính có dấu bằng và chúng tôi chỉ định các giá trị bên trong dấu ngoặc kép

Làm cách nào để biết đó là html hay xml?

Hình 40. 8. Thuộc tính và giá trị trong thẻ html

Trong ví dụ trên, thẻ đoạn chứa thuộc tính

wiki <- 'https://en.wikipedia.org/wiki/Men%27s_long_jump_world_record_progression'

# this fails
tbls <- readHTMLTable(wiki)
6 cho ngôn ngữ có giá trị
wiki <- 'https://en.wikipedia.org/wiki/Men%27s_long_jump_world_record_progression'

# this fails
tbls <- readHTMLTable(wiki)
7 cho tiếng Tây Ban Nha hoặc tiếng Tây Ban Nha

Cũng lưu ý rằng phần tử

wiki <- 'https://en.wikipedia.org/wiki/Men%27s_long_jump_world_record_progression'

# this fails
tbls <- readHTMLTable(wiki)
2 trước đó có thuộc tính
wiki <- 'https://en.wikipedia.org/wiki/Men%27s_long_jump_world_record_progression'

# this fails
tbls <- readHTMLTable(wiki)
9 để chỉ ra tên tệp nguồn của ảnh, trong trường hợp này là
wiki <- 'https://en.wikipedia.org/wiki/Men%27s_long_jump_world_record_progression'

# this fails
tbls <- readHTMLTable(wiki)
10

Trình duyệt (e. g. Chrome, Safari, Firefox) đọc HTML, diễn giải tất cả các thẻ và hiển thị nội dung tương ứng. Nhớ lại rằng các thẻ cho trình duyệt biết về cấu trúc và ý nghĩa của văn bản. Trình duyệt xác định phần nào là tiêu đề (e. g.  

,

), đoạn văn gồm những phần nào (e. g.  ), phần nào là danh sách (e. g.  ,), văn bản nào cần được nhấn mạnh, v.v.Cú pháp HTML cho trình duyệt biết về cấu trúc của tài liệu. tiêu đề ở đâu, đoạn văn ở đâu, văn bản nào là một phần của danh sách, v.v. Làm thế nào để các trình duyệt biết điều này? . Ngoài các cài đặt mặc định, các thành phần HTML có thể được định dạng theo vô số cách bằng cách sử dụng cái được gọi là Cascade Style Sheets hoặc CSS viết tắt, xác định loại phông chữ, màu sắc, kích thước và nhiều khía cạnh trực quan khác của trang

Nhiều trang web được bảo mật bằng chứng chỉ SSL/TLS mà bạn có thể xác định bằng cách xem URL có chứa ________ 111 ​​(Bảo mật giao thức truyền siêu văn bản). SSL là viết tắt của Lớp cổng bảo mật. Đây là công nghệ giữ kết nối internet an toàn và bảo vệ dữ liệu nhạy cảm đang được gửi giữa máy khách và máy chủ (ví dụ: khi bạn sử dụng trình duyệt của mình để mua sắm trên amazon) hoặc máy chủ với máy chủ (ví dụ: ứng dụng có bảng lương . Công nghệ SSL hiện không được dùng nữa và đã được thay thế hoàn toàn bằng TLS, viết tắt của Transport Layer Security. Nói một cách đơn giản, TSL cũng đảm bảo quyền riêng tư của dữ liệu giống như cách SSL thực hiện. Vì SSL thực sự không còn được sử dụng nữa, đây là thuật ngữ chính xác mà mọi người nên bắt đầu sử dụng

HTTPS là một phần mở rộng an toàn của HTTP. Khi một trang web sử dụng HTTPS, điều đó có nghĩa là trang web đó được bảo mật bằng chứng chỉ SSL/TLS. Do đó, các trang web cài đặt và định cấu hình chứng chỉ SSL/TLS có thể sử dụng giao thức HTTPS để thiết lập kết nối an toàn với máy chủ. Trích dẫn. “Các chi tiết của chứng chỉ, bao gồm cơ quan cấp và tên công ty của chủ sở hữu trang web, có thể được xem bằng cách nhấp vào biểu tượng khóa trên thanh trình duyệt. ”

Wikipedia sử dụng HTTPS. Ví dụ: nếu chúng tôi truy cập mục nhập về kỷ lục thế giới nhảy xa nam, thì url là

https. // vi. wikipedia. org/wiki/Men%27s_long_jump_world_record_progression

Nếu chúng tôi cố gắng sử dụng các chức năng như

wiki <- 'https://en.wikipedia.org/wiki/Men%27s_long_jump_world_record_progression'

# this fails
tbls <- readHTMLTable(wiki)
12 từ gói
wiki <- 'https://en.wikipedia.org/wiki/Men%27s_long_jump_world_record_progression'

# this fails
tbls <- readHTMLTable(wiki)
13, nó sẽ bị lỗi

wiki <- 'https://en.wikipedia.org/wiki/Men%27s_long_jump_world_record_progression'

# this fails
tbls <- readHTMLTable(wiki)

Một tùy chọn để đọc các bảng html và trích xuất chúng dưới dạng khung dữ liệu R, trước tiên là tải tệp html xuống máy tính của bạn, sau đó sử dụng

wiki <- 'https://en.wikipedia.org/wiki/Men%27s_long_jump_world_record_progression'

# this fails
tbls <- readHTMLTable(wiki)
14 để cạo các bảng

Những tính năng nào phân biệt HTML với XML?

Sự khác biệt chính giữa HTML và XML là ở chỗ HTML hiển thị dữ liệu và mô tả cấu trúc của trang web, trong khi XML lưu trữ và truyền dữ liệu . XML là ngôn ngữ tiêu chuẩn có thể xác định các ngôn ngữ máy tính khác, nhưng HTML là ngôn ngữ được xác định trước với các hàm ý riêng của nó.

XML có phải là một phiên bản của HTML không?

XML (Ngôn ngữ đánh dấu mở rộng) là ngôn ngữ đánh dấu tương tự như HTML, nhưng không có các thẻ được xác định trước để sử dụng . Thay vào đó, bạn xác định các thẻ của riêng mình được thiết kế dành riêng cho nhu cầu của bạn. Đây là một cách mạnh mẽ để lưu trữ dữ liệu ở định dạng có thể được lưu trữ, tìm kiếm và chia sẻ.

Tôi nên sử dụng XML hay HTML?

XHTML được phát triển để giúp HTML có thể mở rộng và linh hoạt hơn để hoạt động với các định dạng dữ liệu khác (chẳng hạn như XML). Ngoài ra, các trình duyệt bỏ qua các lỗi trong trang HTML và cố gắng hiển thị trang web ngay cả khi nó có một số lỗi trong đánh dấu. Vì vậy, XHTML đi kèm với việc xử lý lỗi chặt chẽ hơn nhiều.