- 论坛徽章:
- 0
|
本帖最后由 SNYH 于 2011-04-25 16:28 编辑
- import .....
- url = 'http://bbs.chinaunix.net/viewthread.php?tid=2309181&extra=page%3D1'
- f = urllib.urlopen(url)
- content = f.read().decode('gb18030').encode('utf-8')
- tree = lxml.html.parse(StringIO(content))
- print lxml.html.tostring(tree)
复制代码 也尝试过lxml.html.formstring等方式.
但每次都只能解析出一个只带title的格式- <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
- <html xmlns="http://www.w3.org/1999/xhtml"><head><title>请教lxml.html中parse gb18030编码的文件 不出现body element</title></head></html>
复制代码 如果把url的内容先保存成一个文件,然后解析也可以正常解析.
试过纯英文的html可以正常解析
另外urllib 似乎很不好用?
经常出现 Name or service not known 抛出IO异常
(这个可能是校园网的网络不行导致不能解析dns)
刚接触python
以前用perl的HTML::TreeBuilder 直接就拿来用 根本就没不知道还会出现不能解析的问题..
lxml弄了快一天还没搞定...
请各位前辈指点一二 |
|