百姓网城市--省,市,爬取

import pymysql
from selenium import webdriver
from selenium.webdriver.chrome.options import Options

db = pymysql.connect(host='1', user='1', password='1', database='1')
cursor = db.cursor()


def insert_data(province, city, url, db, cursor):
    try:
        sql = 'insert into baixingwang_info(`province`,`city`,`url`)values (%s,%s,%s)'
        cursor.execute(sql, (province, city, url))
        db.commit()
    except Exception as e:
        print(e)


def start():
    chrome_options = Options()
    browser = webdriver.Chrome(options=chrome_options)
    browser.get('https://www.baixing.com/?changeLocation=yes')
    browser.set_page_load_timeout(15)
    browser.set_script_timeout(15)
    zhixiashi(browser)
    all_city(browser)
    browser.quit()


def all_city(browser):
    province = browser.find_elements_by_xpath('//ul[@class="wrapper"]//li//div[@class="city-sec"]')
    for i in province:
        province_1 = i.find_element_by_xpath('.//h5//a').text
        city_3 = i.find_elements_by_xpath('.//ul[@class="collapsed"]//li/a[position()=1]')
        for j in city_3:
            city = j.text
            link = j.get_attribute("href")
            insert_data(province=province_1, city=city, url=link, db=db, cursor=cursor)


def zhixiashi(browser):
    zxs = browser.find_elements_by_xpath('//ul[@class="wrapper"]//li[2]')
    for i in zxs:
        zxs_city = i.find_elements_by_xpath('.//ul//li/a[position()=1]')
        for j in zxs_city:
            city = j.text
            link = j.get_attribute("href")
            province_1 = j.text
            insert_data(province=province_1, city=city, url=link, db=db, cursor=cursor)


if __name__ == '__main__':
    start()

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值