【发布时间】:2012-12-23 02:40:11
【问题描述】:
我正在建立一个允许用户提交链接的网站。我想使用 BeautifulSoup(或其他更适合该任务的东西)从提交的 URL 中提取标题标签,并将其显示在列出用户提交的链接的页面上。
我在此页面上尝试了第二个答案: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 时 SO 在预览中的作用。
【问题讨论】:
-
随意发布您当前遇到的代码 - 它有助于为您的情况添加上下文并为人们提供一个起点(欢迎使用 SO :))。
-
很少出现“代码过多”的问题。
标签: python django django-models beautifulsoup