用HTMLParser解析html时报错:No module named 'htmlentitydefs'
生活随笔
收集整理的這篇文章主要介紹了
用HTMLParser解析html时报错:No module named 'htmlentitydefs'
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
python3.6用HTMLParser解析html時報錯No module named 'htmlentitydefs'或No module named 'markupbase'
先上代碼
from HTMLParser import HTMLParser import urllib.requestclass myhtml(HTMLParser):def __init__(self):HTMLParser.__init__(self)self.flag = 0self.links = []def handle_starttag(self,tag,attrs):if tag == "a":for name,value in attrs:if name == "href":self.links.append(name)if __name__ == "__main__":parser = myhtml()myurl = "https://www.cnblogs.com/pinpin"html = urllib.request.urlopen(myurl)html_connect =html.read()html_connect = bytes.decode(html_connect)parser.feed(html_connect)print(parser.links)錯誤如下:
TypeError: No module named 'htmlentitydefs'
簡單來說 就是一個導包錯誤,沒有就下載導入一個唄~~~,但是這個庫安裝不了,所以繼續找了
百度結論:'htmlentitydefs'應該是在python3以后棄用了
那怎么辦,最后通過努力,找到了個很簡單的方法
靈感來自:
http://stackoverflow.max-everyday.com/2018/06/python3-importerror-no-module-named-htmlparser/
from HTMLParser import HTMLParser #python2可這么寫
from html.parser import HTMLParser #python3建議都這么寫后,問題解決了
轉載于:https://www.cnblogs.com/pinpin/p/10451238.html
總結
以上是生活随笔為你收集整理的用HTMLParser解析html时报错:No module named 'htmlentitydefs'的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: java运维技术要求,Java
- 下一篇: HTML 限制文本框只能输入数字 onk