【问题标题】:In python, I want to extract text data在python中,我想提取文本数据
【发布时间】:2025-12-17 11:15:01
【问题描述】:

我现在正在尝试从网页中获取文本,但是在获得网页 URL 后,我很难继续下一步,因为我不知道如何处理 BeautifulSoup

import urllib
from bs4 import BeautifulSoup
import xml.dom.minidom

keyWord = raw_input("Enter the key-word : ")
address = "http://openapi.naver.com/search?key=c1b406b32dbbbbeee5f2a36ddc14067f&query=" + keyWord + "&display=5&start=1&target=kin&sort=sim"
search_result = urllib.urlopen(address)
raw_data = search_result.read()

parsed_result = xml.dom.minidom.parseString(raw_data)
links = parsed_result.getElementsByTagName('link')

extracted_URL = links[0].firstChild.nodeValue
page = urllib.urlopen(extracted_URL).read()

【问题讨论】:

  • “我想要文本,但我不知道如何处理 BeautifulSoup”不是这里任何人都可以帮助您的问题。您是否阅读过教程或文档?你想得到什么文字?
  • 一个大问题是您甚至没有提出任何问题。你有什么问题?你做了什么来解决这个问题?

标签: python xml parsing xml-parsing beautifulsoup


【解决方案1】:

您需要使用xml 标记初始化BeautifulSoup 对象:

import urllib
from bs4 import BeautifulSoup

keyWord = raw_input("Enter the key-word : ")
address = "http://openapi.naver.com/search?key=c1b406b32dbbbbeee5f2a36ddc14067f&query=" + keyWord + "&display=5&start=1&target=kin&sort=sim"

soup = BeautifulSoup(urllib.urlopen(address), 'xml')
print [link.text for link in soup.find_all('link')]

打印(用于test 关键字):

[u'http://search.naver.com', 
 u'http://openapi.naver.com/l?AAAA3IOQ6AIBRF0dVIaQQUq1/YuA+GRzDECb8m7F5uTnXvF6US42HB9QLl7RAZlbx042CcVsG1AExRWW1C8LL9OYpUECkxX51eOrU2D2zxqT/sh9L7c/8BHpFL8lsAAAA=',
 ...
]

此外,值得阅读文档中的 Quick Start 章节。

希望对您有所帮助。

【讨论】:

    最近更新 更多