Python基础selenium+数据库

from selenium import webdriver
from selenium.webdriver.common.keys import Keys
import MySQLdb
import time

#新建driver并最大化
driver = webdriver.Chrome()
driver.maximize_window()
time.sleep(0.2)

#发送请求 并判断标题中是否包含财年
driver.get("https://www.runoob.com/")
assert "菜鸟" in driver.title
time.sleep(1)

#在文本框中输入python并回车
driver.find_element_by_css_selector("#s").send_keys("python")
driver.find_element_by_css_selector("#s").send_keys(Keys.ENTER)

#获取所有窗口的句柄到当前会话,返回一个窗口句柄列表
handles = driver.window_handles
handles_ = handles[1]
#切换到所需句柄
driver.switch_to.window(handles_)
time.sleep(0.5)

driver.find_element_by_xpath("/html/body/div[4]/div/div[1]/div[2]/div[1]/div/h2/a").click()
time.sleep(0.5)

handles = driver.window_handles
handles_ = handles[2]
driver.switch_to.window(handles_)
time.sleep(0.5)

selector = driver.find_element_by_css_selector(
    "body > div.container.main > div > div.runoob-col-md2 > div > div.sidebar-box.gallery-list")
name = selector.find_element_by_tag_name("div").find_elements_by_tag_name("a")

#数据库连接
db = MySQLdb.connect(host='localhost', user='root', passwd='passwd', db='testa', charset='utf8')
cursor = db.cursor()  # 创建一个游标对象

for n in name:
    title = n.get_attribute("title")
    href = n.get_attribute("href")

    sql = "INSERT INTO runoob(title,href)" \
          " VALUES ('%s','%s')"%(title,href)
    print(sql)

    try:
        # 执行SQL语句
        cursor.execute(sql)
        # 提交到数据库执行
        db.commit()
    except:
        print
        "Error: unable to fecth data"
db.close()
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值