问题求助
第55讲爬取百度百科,会产生这样的报错,请问有什么办法解决嘛?UnicodeEncodeError: 'ascii' codec can't encode characters in position 36-39: ordinal not in range(128) 编码问题,发完整代码看下
网站与时俱进了,甲鱼哥的视频比较找
现在网站改动比较大,词条超链接的关键词不是 view 了,而是 item 你按照这里的帖子改下代码就可以正常访问了:
https://fishc.com.cn/forum.php?mod=redirect&goto=findpost&ptid=169631&pid=4696255
将甲鱼哥的代码把soup.find_all(href=re.compile("view"))改成 soup.find_all(href=re.compile("item"))即可正常爬取数据了
Twilight6 发表于 2020-7-29 16:30
网站与时俱进了,甲鱼哥的视频比较找
现在网站改动比较大,词条超链接的关键词不是 view 了,而是 i ...
网站与时俱进了,甲鱼哥的视频比较找
是“早”不是“找”吧{:10_277:} 本帖最后由 陈尚涵 于 2020-7-29 16:36 编辑
Twilight6 发表于 2020-7-29 16:30
网站与时俱进了,甲鱼哥的视频比较找
现在网站改动比较大,词条超链接的关键词不是 view 了,而是 i ...
额,小问题也得改啊,我有强迫症{:10_250:} {:10_250:} Twilight6 发表于 2020-7-29 16:30
网站与时俱进了,甲鱼哥的视频比较找
现在网站改动比较大,词条超链接的关键词不是 view 了,而是 i ...
我发现你有时候总是打字出错,你打字速度大概多少个字一分钟啊{:10_257:} 陈尚涵 发表于 2020-7-29 16:27
编码问题,发完整代码看下
#爬虫允许用户输入搜索的关键词,并显示结果
import urllib.request
import urllib.parse
import re
from bs4 import BeautifulSoup
def main():
keyword = input('请输入关键词:')
keyword = urllib.parse.urlencode({'word':keyword})
response = urllib.request.urlopen('http://baike.baidu.com/search/word?%s'%keyword)
html = response.read()
soup =BeautifulSoup(html,'html.parser')
for each in soup.find_all(href = re.compile('item')):
content = ''.join()
url2= ''.join(['http://baike.baidu.com',each['href']])
response2 = urllib.request.urlopen(url2)
html2 = response2.read()
soup2 = BeautifulSoup(html2,'html.parser')
if soup2.h2:
content = ''.join()
content = ''.join()
print(content)
if __name__ == '__main__':
main()
小尤you 发表于 2020-7-29 16:42
不看 3L 正解???这样改下就行啊
# 爬虫允许用户输入搜索的关键词,并显示结果
import urllib.request
import urllib.parse
import re
from bs4 import BeautifulSoup
def main():
keyword = input('请输入关键词:')
keyword = urllib.parse.urlencode({'word': keyword})
response = urllib.request.urlopen('http://baike.baidu.com/search/word?%s' % keyword)
html = response.read()
soup = BeautifulSoup(html, 'html.parser')
for each in soup.find_all(href=re.compile("item")):
content = ''.join()
url2 = ''.join(['http://baike.baidu.com', each['href']])
response2 = urllib.request.urlopen(url2)
html2 = response2.read()
soup2 = BeautifulSoup(html2, 'html.parser')
if soup2.h2:
content = ''.join()
content = ''.join()
print(content)
if __name__ == '__main__':
main()
页:
[1]