saltorsugar 2021-11-29 20:10 采纳率: 66.7%
浏览 142
已结题

爬虫爬取时返回空列表

代码如下
写一半测试时发现返回一堆空列表



```python
import sys
import re
import urllib.request
import xlwt
from bs4 import BeautifulSoup

#定义正则表达式筛选规则
findLink=re.compile(r'<a href="(.*?)" target="_blank" class="title">.*?</a>',re.S)#视频链接

#获取对应url网页的数据
def get_url(url):
    head = {"User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/96.0.4664.55 Safari/537.36 Edg/96.0.1054.34"}#模拟计算机访问网页
    request = urllib.request.Request(url,headers=head)#以headers身份访问url网页
    html=''
    try:
        reponse = urllib.request.urlopen(request)
        html = reponse.read().decode('utf-8')
    except urllib.error.URLError as e:
        if hasattr(e,'code'):
            print(e.code)
        if hasattr(e,'reason'):
            print(e.reason)
    return html

#调用get_url函数获取指定网页数据,以html形式存储
def get_data(baseurl):
    data_list=[]
    html=get_url(baseurl)#获取get_url爬到的数据
    soup=BeautifulSoup(html,'html.parser')#定义使用html解读器解读数据的变量soup
    for item in soup.find_all('div',class_="content"):
        item=str(item)
        link=re.findall(findLink,item)#寻找链接
        #data_list.append(link)#保存链接
        print(link)
    return data_list
get_data('https://www.bilibili.com/v/popular/rank/all')


  • 写回答

1条回答 默认 最新

  • CSDN专家-showbo 2021-11-29 20:22
    关注

    正则去掉class内容,bilibili源代码没有class

    img

    
    findLink=re.compile(r'<a href="(.*?)" target="_blank">.*?</a>',re.S)#视频链接
    
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

问题事件

  • 系统已结题 12月7日
  • 已采纳回答 11月29日
  • 创建了问题 11月29日

悬赏问题

  • ¥30 电脑误删了手机的照片怎么恢复?
  • ¥15 (标签-python|关键词-char)
  • ¥15 python+selenium,在新增时弹出了一个输入框
  • ¥15 苹果验机结果的api接口哪里有??单次调用1毛钱及以下。
  • ¥20 学生成绩管理系统设计
  • ¥15 来一个cc穿盾脚本开发者
  • ¥15 CST2023安装报错
  • ¥15 使用diffusionbert生成文字 结果是PAD和UNK怎么办
  • ¥15 有人懂怎么做大模型的客服系统吗?卡住了卡住了
  • ¥20 firefly-rk3399上启动卡住了