Selenium简介
Selenium是一个用于测试网站的自动化测试工具,支持各种浏览器包括Chrome、Firefox、Safari等主流界面浏览器,同时也支持phantomJS无界面浏览器。
此处使用了selenium插件 使用的是火狐浏览器 信息存储到csv表格里面
前面详细不多讲如果条件不满足自行百度安装
# -*- coding: utf-8 -*-
"""
Created on Wed Dec 11 20:21:04 2019
@author: Administrator
"""
from selenium import webdriver
import time
import random
import csv
import codecs
#此处为要爬取的页数默认为 50页
yema = 50
#要爬取的网址 此处网址为搜索详细产品出现的产品搜索结果页
#注意苏宁搜索行业词出现的产品页面是不一样的
wangzhi = "https://search.suning.com/%E4%BC%91%E9%97%B2%E9%A3%9F%E5%93%81/"
#codevs 防止中文写入时乱码
f = codecs.open('suning.csv','a',encoding='utf-8')
csv_writer = csv.writer(f)
#谷歌
#browser = webdriver.chrom.webdirver.WebDriver(executable_path="chromedriver")
#火狐
browser1 = webdriver.Firefox(executable_path="geckodriver")
def browser_1(url,browser=browser1):
#打开网页
browser.get(url)
return(browser)
browser = browser_1(wangzhi)
#通过class找到元素
#input_guanggao = browser.find_element_by_class_name("close-btn")
#点一下
#input_guanggao.click()
#输入
#input_txt.send_keys("111")
#翻页键
#next_page = browser.find_element_by_class_name("next")
#数据提取
urls = []
nub = 1
for i in range(yema-1):
print(i)
#将滚动条拖到底部
js="var q=document.documentElement.scrollTop=100000"
browser.execute_script(js)
time.sleep(random.randint(5,10))
shops = browser.find_elements_by_class_name("sellPoint")
for shop in shops:
#print(shop)
#print("*"*10)
url = shop.get_attribute('href')
vip = "/0000000000/"
if vip not in url:
urls.append(url)
print(i,"--",nub,"--",url)
nub += 1
print(i,"页")
i += 1
js="var q=document.documentElement.scrollTop=500"
browser.execute_script(js)
time.sleep(random.randint(3,5))
next_page = browser.find_element_by_class_name("next")
time.sleep(random.randint(3,5))
next_page.click()
time.sleep(random.randint(5,8))
print("---"*10)
for ul in urls:
browser_shop = browser_1(ul)
#公司名称
chead_companyName = browser_shop.find_element_by_id("chead_companyName")
#电话
chead_telPhone = browser_shop.find_element_by_id("chead_telPhone")
#地址
chead_companyAddress = browser_shop.find_element_by_id("chead_companyAddress")
browser_shop.find_element_by_class_name("storname").click()
#chead_telPhone.find_element_by_xpath("//*[contains(text(),'13816391436')]").click()
companyName = chead_companyName.text
if companyName == "":
companyName = "null"
telPhone = chead_telPhone.text
if telPhone == "":
telPhone = "null"
companyAddress = chead_companyAddress.text
if companyAddress == "":
companyAddress = "null"
print(companyName,"==",telPhone,"==",companyAddress)
csv_writer.writerow([companyName,telPhone,companyAddress])
#browser_shop.close()
f.close()
print("结束")
总结
以上所述是小编给大家介绍的Python3 使用selenium插件爬取苏宁商家联系电话,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对网站的支持!
如果你觉得本文对你有帮助,欢迎转载,烦请注明出处,谢谢!
python,selenium
《魔兽世界》大逃杀!60人新游玩模式《强袭风暴》3月21日上线
暴雪近日发布了《魔兽世界》10.2.6 更新内容,新游玩模式《强袭风暴》即将于3月21 日在亚服上线,届时玩家将前往阿拉希高地展开一场 60 人大逃杀对战。
艾泽拉斯的冒险者已经征服了艾泽拉斯的大地及遥远的彼岸。他们在对抗世界上最致命的敌人时展现出过人的手腕,并且成功阻止终结宇宙等级的威胁。当他们在为即将于《魔兽世界》资料片《地心之战》中来袭的萨拉塔斯势力做战斗准备时,他们还需要在熟悉的阿拉希高地面对一个全新的敌人──那就是彼此。在《巨龙崛起》10.2.6 更新的《强袭风暴》中,玩家将会进入一个全新的海盗主题大逃杀式限时活动,其中包含极高的风险和史诗级的奖励。
《强袭风暴》不是普通的战场,作为一个独立于主游戏之外的活动,玩家可以用大逃杀的风格来体验《魔兽世界》,不分职业、不分装备(除了你在赛局中捡到的),光是技巧和战略的强弱之分就能决定出谁才是能坚持到最后的赢家。本次活动将会开放单人和双人模式,玩家在加入海盗主题的预赛大厅区域前,可以从强袭风暴角色画面新增好友。游玩游戏将可以累计名望轨迹,《巨龙崛起》和《魔兽世界:巫妖王之怒 经典版》的玩家都可以获得奖励。
更新日志
- 小骆驼-《草原狼2(蓝光CD)》[原抓WAV+CUE]
- 群星《欢迎来到我身边 电影原声专辑》[320K/MP3][105.02MB]
- 群星《欢迎来到我身边 电影原声专辑》[FLAC/分轨][480.9MB]
- 雷婷《梦里蓝天HQⅡ》 2023头版限量编号低速原抓[WAV+CUE][463M]
- 群星《2024好听新歌42》AI调整音效【WAV分轨】
- 王思雨-《思念陪着鸿雁飞》WAV
- 王思雨《喜马拉雅HQ》头版限量编号[WAV+CUE]
- 李健《无时无刻》[WAV+CUE][590M]
- 陈奕迅《酝酿》[WAV分轨][502M]
- 卓依婷《化蝶》2CD[WAV+CUE][1.1G]
- 群星《吉他王(黑胶CD)》[WAV+CUE]
- 齐秦《穿乐(穿越)》[WAV+CUE]
- 发烧珍品《数位CD音响测试-动向效果(九)》【WAV+CUE】
- 邝美云《邝美云精装歌集》[DSF][1.6G]
- 吕方《爱一回伤一回》[WAV+CUE][454M]