帮我哥用seleium写了个自动填表的爬虫,留存一下

import xlrd
from selenium import webdriver
import time

workxls =xlrd.open_workbook("test.xls")
worksheet = workxls.sheet_by_index(0)
row =worksheet.nrows-1



serial=[0 for i in range(row)]
weight=[0 for i in range(row)]
volume=[0 for i in range(row)]
serial_yes=[]
serial_no=[]
weight_yes=[]
weight_no=[]
volume_yes=[]
volume_no=[]
serial_pass=[]
weight_pass=[]
volume_pass=[]

print('已读入%d组数据,正在对数据进行检查分类'%row)
for i in range(0,row):
    rowdate =worksheet.row_values(i+1)
    serial[i]=rowdate[0]
    weight[i]=rowdate[1]
    volume[i]=rowdate[2]
for i in range(0,row):
    if weight[i]/volume[i]>=168 and weight[i]/volume[i]<= 330:
        serial_yes.append(serial[i])
        weight_yes.append(weight[i])
        volume_yes.append(volume[i])
    elif weight[i]/volume[i]>=7800:
        serial_pass.append(serial[i])
        weight_pass.append(weight[i])
        volume_pass.append(volume[i])
    else:
        serial_no.append(serial[i])
        weight_no.append(weight[i])
        volume_no.append(volume[i])
yes_num=len(serial_yes)
no_num=len(serial_no)
pass_num=len(serial_pass)
print('数据检查完成,合格数据%d条,不合格数据%d条,PASS数据%d条。'%(yes_num,no_num,pass_num))
print(serial,weight,volume)
print('正在读取浏览器缓存,在这卡顿几十秒是正常现象,稍等一下')
profileDir = "D:\\Users\\bj3c\\AppData\\Roaming\\Mozilla\\Firefox\\Profiles\\4mxptqin.default"
profile = webdriver.FirefoxProfile(profileDir)
driver = webdriver.Firefox(profile)
print('正在打开浏览器')


driver.get('http://dms.etms.jd.com/weightAndVolumeCheckOfB2b/toIndex')
time.sleep(2)
print('开始填入合格数据')

for i in range(0,yes_num):
    yundan = driver.find_element_by_id("waybillOrPackageCode")
    yundan.clear()
    yundan.send_keys(str(serial_yes[i]))

    zhongliang = driver.find_element_by_id("waybillWeight")
    zhongliang.clear()
    zhongliang.send_keys(str(weight_yes[i]))

    tiji = driver.find_element_by_id("waybillVolume")
    tiji.clear()
    tiji.send_keys(str(volume_yes[i]))

    # 点击登录
    login_confirm = driver.find_element_by_id("btn_check")
    login_confirm.click()

    print('正在填入第%d条合格数据'%i)
    time.sleep(2)

print('开始填入不合格数据')

for i in range(0,no_num):
    yundan = driver.find_element_by_id("waybillOrPackageCode")
    yundan.clear()
    yundan.send_keys(str(serial_no[i]))

    zhongliang = driver.find_element_by_id("waybillWeight")
    zhongliang.clear()
    zhongliang.send_keys(str(weight_no[i]))

    tiji = driver.find_element_by_id("waybillVolume")
    tiji.clear()
    tiji.send_keys(str(volume_no[i]))

    # 点击登录
    login_confirm = driver.find_element_by_id("btn_check")
    login_confirm.click()

    print('正在填入第%d条不合格数据'%i)
    time.sleep(2)

print('所有数据已经录入完毕,现在可以关闭此窗口了')
time.sleep(300)




好的,以下是一个简单的用selenium的淘宝商品爬虫的示例代码: ```python from selenium import webdriver from selenium.webdriver.common.keys import Keys import time # 设置要搜索的商品名 search_word = '手机' # 设置chromedriver的路径 driver_path = '/path/to/chromedriver' # 创建一个Chrome浏览器实例 driver = webdriver.Chrome(driver_path) # 打开淘宝首页 driver.get('https://www.taobao.com') # 找到搜索框并输入要搜索的商品名 search_box = driver.find_element_by_name('q') search_box.send_keys(search_word) search_box.send_keys(Keys.RETURN) # 等待页面加载完成 time.sleep(5) # 找到所有商品的div元素 items = driver.find_elements_by_xpath('//div[@class="items"]/div[@class="item"]') # 遍历每个商品,并输出商品的名称和价格 for item in items: title = item.find_element_by_xpath('.//img').get_attribute('alt') price = item.find_element_by_xpath('.//div[@class="price g_price g_price-highlight"]/strong') print(title + ': ' + price.text) # 关闭浏览器 driver.quit() ``` 这个爬虫的工作流程如下: 1. 创建一个Chrome浏览器实例 2. 打开淘宝首页 3. 找到搜索框并输入要搜索的商品名 4. 模拟按下回车键进行搜索 5. 等待页面加载完成 6. 找到所有商品的div元素 7. 遍历每个商品,并输出商品的名称和价格 8. 关闭浏览器 你可以根据自己的需要修改这个示例代码。例如,你可以将商品列表保存到数据库中,或者增加翻页功能来获取更多商品。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值