我正在構建一個允許用戶提交鏈接的站點。我想使用BeautifulSoup(或者其他的東西,如果它對任務更好),從提交的URL中提取標題標籤並將其顯示在列出用戶提交的鏈接的頁面上。使用BeautifulSoup來填充Django模型
我嘗試這個頁面上的第二個答案:How can I retrieve the page title of a webpage using Python?
它工作在shell,但我不知道在哪裏/如何使用soup.title.string能夠填充模型。
如果您需要代碼示例,我到目前爲止嘗試過,只需詢問。我沒有發佈它,因爲我試過了幾個不同的東西。
代碼視圖:
def page_save(request):
if request.method == 'POST':
form = PageSaveForm(request.POST)
if form.is_valid():
# Create or get link.
link, dummy = Link.objects.get_or_create(
url=form.cleaned_data['url']
)
# Create or get bookmark.
page, created = Page.objects.get_or_create(
user=request.user,
link=link
soup=BeautifulSoup.BeautifulSoup(urllib.urlopen(link))
title=soup.title.string
的間距是關閉的,很明顯。
如果用戶可以保存鏈接,然後我有模板從每個鏈接拉出標題並將其顯示給最終用戶,我會很高興。
甚至當我粘貼一個URL時,它在預覽中會做什麼。
隨意發佈您目前所使用的代碼 - 它有助於爲您的情況添加上下文,併爲人們提供一個起點(並歡迎您加入:))。 – RocketDonkey
「太多代碼」是一個問題是非常罕見的。 – cwallenpoole