关于使用selenium.webdriver爬取数据

暂时对 selenium 库没有一点点了解。。。先记录一下这个能用的代码

import time
from selenium import webdriver
from selenium.webdriver.common.by import By
from selenium.webdriver.chrome.webdriver import WebDriver

def save_list(List, save_path):             # 爬下来的数据是通过list保存的
    with open(save_path, 'a') as f:         # 'a'增加
        for raw_word in List:
            f.write(raw_word + '\n')        # 以换行符分割

class GetWords:
    def __init__(self):
        self.driver: WebDriver = webdriver.Chrome()

    def open_site(self, url):
        self.driver.get(url)
        time(5)

    def get_words(self, xpath, item_type, save_path):
    raw_words = []
    container = self.driver.find_element(By.XPATH, xpath)
    words = container.find_elements(By.TAG_NAME, item_type)

    for word in words:
        raw_words.apprnd(word.text)

    save_list(raw_words, save_path)

    def close_browser(self):
        self.driver.quit()

def main():

    GW = GetWords()
    GW.open_web('https:// xxxxx')
    save_path = r'C:xxx'
    GW.get_words(xpath, item_type)

    GW.close_browser()

①:由于使用的是谷歌浏览器,所以下载对应浏览器及对应其版本的插件;

②:复制要爬取数据的网址;

③:在目标网页上按F12获取要爬取数据的xpathitem type

        item type:

                        ①:li  表示HTML列表中的列表项

                        ②:p  表示HTML中的段落

                        ③:pre  表示HTML中的预格式化文本

④:使用find_elementfind_elements方法;

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值