• 大三寒假第二篇学习记录


    今天学了爬虫,实现了一些爬虫案例,如从猫眼电影网址中爬取Top100的电影数据,最受期待的电影等。

    爬虫三部曲:

    第一步:获取网页数据(响应)

    1 def reptile(url):
    2     try:
    3         response = requests.get(url,headers=headers)
    4         if response.status_code == 200:
    5             return response.text
    6         else:
    7             print("获取网页失败")
    8     except Exception as e:
    9         print(e)

    第二步:去响应数据的中所需的数据

     1 def get_info(page):
     2     items = re.findall('<dd>.*?<i class="board-index board-index-.*?">(.*?)</i>.*?<p class="name"><a.*?>(.*?)</a>.*?<p class="star">主演:(.*?)</p>'+
     3                        '<p class="releasetime">上映时间:(.*?)<.*?</dd>',page,re.S)
     4     # print(items)
     5     print(len(items))
     6     for item in items:
     7         data = {}
     8         data["电影排名"] = item[0]
     9         # print(item[0])
    10         data["电影名称"] = item[1]
    11         data["主演"] = item[2]
    12         data["上映时间"] = item[3]
    13         # data["本月想看新增人数"] = item[4]
    14         yield data

    第三步:生成xls文件

     1     f = xlwt.Workbook(encoding='utf-8')
     2     sheet01 = f.add_sheet(u'sheet1', cell_overwrite_ok=True)
     3     sheet01.write(0, 0, '电影排名')  # 第一行第一列
     4     sheet01.write(0, 1, '电影名称')
     5     sheet01.write(0, 2, '主演')
     6     sheet01.write(0, 3, '上映时间')
     7     # sheet01.write(0, 4, 'score')
     8     # 写内容
     9     for i in range(len(Data)):
    10         sheet01.write(i + 1, 0, Data[i]['电影排名'])
    11         sheet01.write(i + 1, 1, Data[i]['电影名称'])
    12         sheet01.write(i + 1, 2, Data[i]['主演'])
    13         sheet01.write(i + 1, 3, Data[i]['上映时间'])
    14         # sheet01.write(i + 1, 4, Data[i]['score'])
    15         print('p', end='')
    16     f.save('D:\爬虫数据\猫眼电影最期待.xls')

    学习博客:https://blog.csdn.net/weixin_41779359/article/details/86374812

  • 相关阅读:
    Tx.Origin 用作身份验证
    区块链夺宝合约
    (转)JVM内存分配 -Xms128m -Xmx512m -XX:PermSize=128m -XX:MaxPermSize=512m
    Oracle查看用户密码过期,修改永不过期
    springboot测试
    (转)Springboot定时任务
    书单
    (转)redis分布式锁-SETNX实现
    mybatis-generator 代码自动生成工具
    (转)通过Ajax使用FormData对象无刷新上传文件
  • 原文地址:https://www.cnblogs.com/goubb/p/12203496.html
Copyright © 2020-2023  润新知