python爬网页标题与网址

先上效果图:
在这里插入图片描述
在这里插入图片描述
全部代码:

import requests
from bs4 import BeautifulSoup

req = requests.get('https://www.geekdigging.com/')
html = req.text

bf = BeautifulSoup(html,'lxml') #用lxml解析器格式化文本
texts = bf.find_all('h2',class_='item-title')   #提取所有<h2 class="item-title">标签的内容

a_bf = BeautifulSoup(str(texts),'lxml') #用lxml解析器格式化文本
a = a_bf.find_all('a')  #在上面数据的基础上再提取所有<a>标签的内容

list_a=[]
for aa in a:    
    list_a.append(((aa.string).replace(' ','') ,aa.get('href'))) #提取标题并去除空格+提取网址,追加到列表

list_a.sort()   #对列表进行排序.升序
for aaa in list_a:
    print(aaa[0],aaa[1])

以下分别用图片说明代码实现的功能

在这里插入图片描述
在这里插入图片描述
实现代码:

bf = BeautifulSoup(html,'lxml') #用lxml解析器格式化文本
texts = bf.find_all('h2',class_='item-title')   #提取所有<h2 class="item-title">标签的内容

------------------------------------------------------------------------------------------------------------------------------------
在这里插入图片描述
实现代码:

a_bf = BeautifulSoup(str(texts),'lxml') #用lxml解析器格式化文本
a = a_bf.find_all('a')  #在上面数据的基础上再提取所有<a>标签的内容

------------------------------------------------------------------------------------------------------------------------------------

在这里插入图片描述
从上图看到存在许多空格,并不是想要的格式,我要除掉所有空格。

list_a=[]
for aa in a:    
    list_a.append(((aa.string).replace(' ','') ,aa.get('href'))) #提取标题并去除空格+提取网址,追加到列表

在这里插入图片描述
到了这里,格式是我想的,但排序还是不满意,原谅我是处女座,继续优化

list_a.sort()   #对列表进行排序.升序
for aaa in list_a:
    print(aaa[0],aaa[1])

在这里插入图片描述
最后的效果,看起来舒服好多了

  • 0
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值