使用Python和BeautifulSoup(将网页源代码保存到本地文件中)
我正在使用Python 2.7 + BeautifulSoup 4.3.2。
我正在尝试使用Python和BeautifulSoup在网页上获取信息。因为该网页位于公司网站中,并且需要登录和重定向,所以我将目标页面的源代码页面复制到一个文件中,并将其另存为C:\中的“
example.html”,以方便练习。
这是原始代码的一部分:
<tr class="ghj"> <td><span class="city-sh"><sh src="./citys/1.jpg" alt="boy" title="boy" /></span><a href="./membercity.php?mode=view&u=12563">port_new_cape</a></td>
<td class="position"><a href="./search.php?id=12563&sr=positions" title="Search positions">452</a></td>
<td class="details"><div>South</div></td>
<td>May 09, 1997</td>
<td>Jan 23, 2009 12:05 pm </td>
</tr>
到目前为止,我得出的代码是:
from bs4 import BeautifulSoupimport re
import urllib2
url = "C:\example.html"
page = urllib2.urlopen(url)
soup = BeautifulSoup(page.read())
cities = soup.find_all('span', {'class' : 'city-sh'})
for city in cities:
print city
这只是测试的第一步,因此有些不完整。
但是,当我运行它时,它会显示一条错误消息。似乎不适合urllib2.urlopen
用来打开本地文件。
Traceback (most recent call last): File "C:\Python27\Testing.py", line 8, in <module>
page = urllib2.urlopen(url)
File "C:\Python27\lib\urllib2.py", line 127, in urlopen
return _opener.open(url, data, timeout)
File "C:\Python27\lib\urllib2.py", line 404, in open
response = self._open(req, data)
File "C:\Python27\lib\urllib2.py", line 427, in _open
'unknown_open', req)
File "C:\Python27\lib\urllib2.py", line 382, in _call_chain
result = func(*args)
File "C:\Python27\lib\urllib2.py", line 1247, in unknown_open
raise URLError('unknown url type: %s' % type)
URLError: <urlopen error unknown url type: c>
如何练习使用本地文件?
回答:
在钱丹的帮助下,问题已得到解决。所有的功劳都归于他。:)
“ urllib2.url”在这里没有用。
from bs4 import BeautifulSoupimport re
# import urllib2
url = "C:\example.html"
page = open(url)
soup = BeautifulSoup(page.read())
cities = soup.find_all('span', {'class' : 'city-sh'})
for city in cities:
print city
以上是 使用Python和BeautifulSoup(将网页源代码保存到本地文件中) 的全部内容, 来源链接: utcz.com/qa/426954.html