fout.write("<td>%s</td>" % data['title'].encode('utf-8'))
fout.write("<td>%s</td>" % data['summary'].encode('utf-8'))
这两句不需要encode('utf-8'),加了这个title和summary就变成十六进制显示的字符了。需要在这一句fout = open('output.html', 'w', encoding='utf-8')加上encoding='utf-8'
fout.write("<td>%s</td>" % data['summary'].encode('utf-8'))
这两句不需要encode('utf-8'),加了这个title和summary就变成十六进制显示的字符了。需要在这一句fout = open('output.html', 'w', encoding='utf-8')加上encoding='utf-8'
2017-10-19
对于新手来说,可以把spider_main.py代码中的try和except去掉,运行报错就会在控制台出现,根据错误去调试自己的程序,导入包的问题,代码书写错误的问题等等,改了半天终于可以正常爬取了
2017-10-19
纠正一下,有可能你从https://www.crummy.com/software/BeautifulSoup/bs4/doc/复制下来的文档里面Lacie是lacie,老师那里的原文是Lacie,所以老师没报错
2017-10-17
AttributeError: 'NoneType' object has no attribute 'name' 的错误应该是link_node = soup.find("a", href="http://example.com/Lacie"),把里面的Lacie改成lacie . 因为测试文档href里面的L是小写的,但是不知道老师的为什么能成功。
2017-10-17
如果只打印了一行craw1:https://。。。。
请把try except去掉,检查错误
一般都是拼写错误
请把try except去掉,检查错误
一般都是拼写错误
2017-10-15
【2017/10/12】【Python3.6.2】【PyCharm 2017.2】【Chrome】
对于中文问题,实际上只需
fout = open('output.html','w', encoding='utf-8')
以及
urllib.parse.unquote(data['url'],encoding='utf-8')
即可。
对于中文问题,实际上只需
fout = open('output.html','w', encoding='utf-8')
以及
urllib.parse.unquote(data['url'],encoding='utf-8')
即可。
2017-10-12
1.抓取的第一个网页:root_url = "https://baike.baidu.com/item/%E5%91%A8%E6%9D%B0%E4%BC%A6"
2.正则表达式匹配URL编码:links = soup.find_all('a', href=re.compile(r'/item/[\\%\\w]+'))
2.正则表达式匹配URL编码:links = soup.find_all('a', href=re.compile(r'/item/[\\%\\w]+'))
2017-10-12
File "E:/Helloworld/baike_spider/spider_main.py", line 19, in craw
new_urls, new_data = self.parser.parse(new_url, html_cont)
TypeError: 'NoneType' object is not iterable
Process finished with exit code 1
new_urls, new_data = self.parser.parse(new_url, html_cont)
TypeError: 'NoneType' object is not iterable
Process finished with exit code 1
2017-10-12