我們的創造直接,如:
>>> new_soup = BeautifulSoup('<link rel="stylesheet" href="css/bootstrap.min.css" type="text/css">')
>>> new_soup
<link rel="stylesheet" href="css/bootstrap.min.css" type="text/css" />
>>> type(new_soup)
<class 'BeautifulSoup.BeautifulSoup'>
>>>
相關的代碼,有很多links
,所以創建link tag
聲明必須是內部for
環
for link in links:
new_soup = BeautifulSoup('<link rel="stylesheet" href="%s" type="text/css">'%link)
self.soup.head.insert(0, new_soup)
self.update_document()
[編輯2] 插入link
標籤到HTML通過BeautifulSoup:
演示:
>>> from BeautifulSoup import BeautifulSoup
# Parser content by BeautifulSoup.
>>> soup = BeautifulSoup("<html><head></head><body></body></html>")
>>> soup
<html><head></head><body></body></html>
# Create New tag.
>>> new_tag = BeautifulSoup('<link rel="stylesheet" href="css/bootstrap.min.css"/>')
>>> new_tag
<link rel="stylesheet" href="css/bootstrap.min.css" />
# Insert created New tag into head tag i.e. first child of head tag.
>>> soup.head.insert(0,new_tag)
>>> soup
<html><head><link rel="stylesheet" href="css/bootstrap.min.css" /></head><body></body></html>
>>> new_tag = BeautifulSoup('<link rel="stylesheet" href="css/custom1.css"/>')
>>> new_tag
<link rel="stylesheet" href="css/custom1.css" />
>>> soup.head.insert(0,new_tag)
>>> soup
<html><head><link rel="stylesheet" href="css/custom1.css" /><link rel="stylesheet" href="css/bootstrap.min.css" /></head><body></body></html>
>>>
[編輯3]
我認爲你是從bs4
模塊進口BeautifulSoup
。
BeautifulSoup
是類,它以html內容爲參數。
新建標籤:
使用new_tag
BeautifulSoup
類的方法來創建新的標籤。
使用attrs
new_tag
的屬性添加class
,href
屬性及其值。
演示:
>>> from bs4 import BeautifulSoup
>>> soup = BeautifulSoup("<html><head></head><body></body></html>")
>>> soup
<html><head></head><body></body></html>
>>> new_link = soup.new_tag("link")
>>> new_link
<link/>
>>> new_link.attrs["href"] = "custom1.css"
>>> new_link
<link href="custom1.css"/>
>>> soup.head.insert(0, new_link)
>>> soup
<html><head><link href="custom1.css"/></head><body></body></html>
你是對的,但我不得不改變爲'self.soup.head.insert(0,new_soup.find( 「鏈接」))',因爲它是插入「html」標籤。 –
@RederickDeathwill:我更新了答案,你能檢查它是否適合你? –
@RederickDeathwill:再次更新答案,我認爲更新的內容對您有用。 :) –