python - 链接网址输出的问题
问题描述
import requestsres=requests.get(’http://news.sina.com.cn/china/’)res.encoding='utf-8'from bs4 import BeautifulSoupsoup=BeautifulSoup(res.text,’html.parser’)a=soup.select(’a’)for i in a: print (i[href])
我想要输出每个链接的网址,但是上面的代码 结果是错误:print (i[href])NameError: name ’href’ is not defined
问题解答
回答1:首先字典的 key 需要引号, print(i[’href’])
你可以用 print(i.get(’href’) ,防止找不到这个元素的时候报 KeyError。
https://docs.python.org/3/lib...
回答2:import requestsfrom bs4 import BeautifulSoupres = requests.get(’http://news.sina.com.cn/china/’)res.encoding = 'utf-8'soup = BeautifulSoup(res.text, ’html.parser’)a = soup.select(’a’)for i in a: try:href = i[’href’]if ’http’ in href: print(href) except KeyError:continue
给个建议:问问题的时候尽量把自己的疑问说出来。你这里主要是 i[’href’] 没加单引号
相关文章:
1. python的文件读写问题?2. sublime-text - sublime text 3中编译python(sublimeREPL),如何仅运行单行/选定部分3. docker images显示的镜像过多,狗眼被亮瞎了,怎么办?4. css3 - 微信前端页面遇到的transition过渡动画的bug5. 如何解决Centos下Docker服务启动无响应,且输入docker命令无响应?6. python - 怎样在linux下开发flask web应用时查看代码出错(traceback)的地方。7. 老师,flex-shrink: 1; 按视频操作,不会自动缩放8. mysql - phpMyAdmin无法导入数据9. macos - mac下docker如何设置代理10. 如何解决docker宿主机无法访问容器中的服务?

网公网安备