• 新开课day20总结


    selenium

    在进行selenium爬取之前需要有一些准备工作,即装selenium包和下载chomedriver

    1. 这里为主要写命令装指定版本的selenium包,在terminal中如下操作:

    在这里插入图片描述

    1. 下载chomedriver

    (1)先获取当前谷歌浏览器版本信息,在谷歌浏览器中输入链接:chrome://version/

    (2)chromedriver下载地址:http://chromedriver.storage.googleapis.com/index.html

    (3)找到和当前谷歌版本对应的chromedriver,如果没有,则找和谷歌版本最近的chromedriver

    (4)下载后解压,将解压文件内容放入python的安装地址中,到此chomedriver操作结束

    使用selenium爬取数据

    1创建浏览器获取原代码

    from selenium.webdriver import Chrome
    a = Chrome()
    a.get('https://www.hao123.com/?tn=48021271_45_hao_pg')
    
    • 1
    • 2
    • 3

    2获取网页源代码

    print(a.page_source)
    
    • 1

    3关闭浏览器

    a.close()
    
    • 1

    csv文件

    1.什么是csv文件,逗号分割文件

    定义:一种后缀是.csv的文件,文件中的每一行通过逗号分割成不同的类,csv可以用exceL软件像打开excel文件-样去打开。

    csv文件的读

    reader获取文件内容,将每一-行内容作为一 个迭代器中的元素返回

    import csv
    f = open('电影.csv','r',encoding='utf-8',newline='')
    f_reader = csv.reader(f)
    for item in f_reader:
        print(item)
    
    • 1
    • 2
    • 3
    • 4
    • 5

    DictReader获取文件内容,

    import csv
    f = open('电影.csv','r',encoding='utf-8',newline='')
    f1 = csv.DictReader(f)
    for it in f1:
        print(it)
    
    • 1
    • 2
    • 3
    • 4
    • 5

    csv文件的读

    csv.writer:

    f2 = open('test.csv','w',encoding='utf-8',newline='')
    x = [
        ['张三','男','004','78','四川'],
        ['李四','男','009','87','贵州'],
        ['王五','男','002','89','美国'],
        ['赵六','男','089','90','沈阳']
    ]
    f2_write = csv.writer(f2)
    f2_write.writerows(x)
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9

    csv.DictWriter:

    f2 = open('test.csv','w',encoding='utf-8',newline='')
    f2_write = csv.DictWriter(f2,['姓名','性别','学号','籍贯'])
    f2_write.writeheader()#加上这句话才有第一行
    f2_write.writerow({'姓名':'赵六','性别':'男','学号':'089','籍贯':'沈阳'})
    f2_write.writerow({'姓名':'赵1六','性别':'男','学号':'059','籍贯':'沈阳'})
    f2_write.writerow({'姓名':'赵2六','性别':'男','学号':'039','籍贯':'沈阳'})
    f2.close()
    :'059','籍贯':'沈阳'})
    f2_write.writerow({'姓名':'赵2六','性别':'男','学号':'039','籍贯':'沈阳'})
    f2.close()
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
  • 相关阅读:
    Abbexa丨Abbexa动物组织 PCR 试剂盒提取说明书
    类与对象的创建
    规格模式 Specification Pattern
    重磅开源:基于.NET 6.0 自研轻量级ORM框架
    常见面试题-MySQL软删除以及索引结构
    【每日力扣】240. 搜索二维矩阵 II与48. 旋转图像
    镜频抑制滤波器对射频接收前端输出噪声的影响
    UE5 官方案例LyraStarter 全特性详解 5.LyraPlayerStart
    7-158 打印九九口诀表
    基于InsightFace的高精度人脸识别,可直接对标虹软
  • 原文地址:https://blog.csdn.net/m0_52957800/article/details/127420219