今天使用selenium给别人写的一个自动化爬虫程序

from selenium import webdriver
from selenium.webdriver.common.by import By
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.support import expected_conditions as EC
from selenium.common.exceptions import TimeoutException
from pyquery import PyQuery as pq
import json
import re
import time
import os
import csvbrowser=webdriver.Firefox()
browser.maximize_window()   #将窗口最大化
wait=WebDriverWait(browser, 10)def search():browser.get("https://www.jd.com/")input=wait.until(EC.presence_of_element_located((By.CSS_SELECTOR, "#key"))   #获取输入框)submit=wait.until(EC.element_to_be_clickable((By.CSS_SELECTOR,"#search > div > div.form > button > i"))   #获取搜索按钮)input.send_keys("电脑")submit.click()# jiexi_page()def next_page(page_number):input = wait.until(EC.presence_of_element_located((By.CSS_SELECTOR, "#J_bottomPage > span.p-skip > input"))   #找到输入页码按钮)submit = wait.until(EC.element_to_be_clickable((By.CSS_SELECTOR, "#J_bottomPage > span.p-skip > a"))   #找到确认按钮)input.clear()input.send_keys(page_number)submit.click()jiexi_page()# wait.until(#      EC.text_to_be_present_in_element((By.CSS_SELECTOR,"#J_bottomPage > span.p-num > a.curr"),str(page_number))# )# next_page(page_number)def write_to_file(content):# with open("京东.xls","a",encoding="utf-8") as f:#     f.write(json.dumps(content,ensure_ascii=False)+"\n")f = open('京东商品.csv', 'a', encoding='utf-8', newline='')writer = csv.writer(f)writer.writerow(content)def jiexi_page():wait.until(EC.presence_of_element_located((By.CSS_SELECTOR,"#J_searchWrap .gl-item"))    #判断是否加载成功)html=browser.page_sourcedoc=pq(html)items=doc("#J_searchWrap .gl-item").items()   #遍历for item in items:product={'name':item.find(".p-name.p-name-type-2").text().replace("\n",""),'price':item.find(".p-price").text()[1:].replace("\n",""),'评价':item.find(".p-commit").text()[:-3],'shop':item.find(".p-shop").text()}product_list = list(product.values())print(product_list)write_to_file(product_list)def main():search()time.sleep(1)next_page(1)for i in range(2,101):next_page(i)time.sleep(2)  # 很关键,我调试了好几个小时,由于未找到该元素,页面未刷新,会报错if __name__=="__main__":main()

selenium自动化爬取京东电脑商品信息用于数据分析相关推荐

  1. Selenium自动化爬取某东商品信息

    文章目录 前言 一.selenium是什么? 1.什么是selenium 2.selenium的用途 二.使用开发步骤 1.引入库 2.函数:管理浏览器操作open_brower() 3.函数:定位提 ...

  2. selenium/requess爬取京东手机商品的详细信息1~selenium练习版

    selenium/requess爬取京东手机商品的详细信息1~selenium!! 前言 因为我也是个学生,所以代码可能会有点繁琐,我们都是超能100,一点点积累进步,其实有很多的地方可以简化,因为我 ...

  3. 【selenium爬虫】 selenium自动化爬取京东图书信息

    一.题目要求:搜索京东图书页,自动点击详情页进入,爬取数据信息并且存储到csv中二.解题思路:1.需要下载一个chromedriver.exe.下载地址:ChromeDriver Mirror 注意: ...

  4. Scrapy练习——爬取京东商城商品信息

    刚刚接触爬虫,花了一段时间研究了一下如何使用scrapy,写了一个比较简单的小程序,主要用于爬取京东商城有关进口牛奶页面的商品信息,包括商品的名称,价格,店铺名称,链接,以及评价的一些信息等.简单记录 ...

  5. Java爬虫技术(二)爬取京东iPhone商品信息并生成Json日志

    准备 配置maven环境 下载浏览器驱动,并引入; 下载浏览器驱动 前往华为云镜像站下载谷歌浏览器驱动 https://mirrors.huaweicloud.com/home 要下载与自己电脑上谷歌 ...

  6. selenium登录 爬取淘宝商品信息

    淘宝网: 淘宝网是亚太地区较大的网络零售.商圈,由阿里巴巴集团在2003年5月创立.淘宝网 是中国深受欢迎的网购零售平台,拥有近5亿的注册用户数,每天有超过6000万的固定访客,同时每天的在线商品数已 ...

  7. 爬取京东图书商品信息

    关键之处在于页面上的评论数的信息是动态加载的,是通过那个标签唯一的id号进行url拼接获得一个json文件然后显示的评论数. 抓包寻找了许久之后发现了一个奇特的文件. 然后再源代码里面搜索发现这个是商 ...

  8. python爬取京东手机参数_python爬虫——分页爬取京东商城商品信息(手机为例)...

    1.最近刚开始学习python   写了个爬虫练习,感觉主要是得会用F12查询网站结构代码.还涉及到反爬虫,每个网站都不一样,拿到的解析出的json数据格式也不同.得有些Web知识的基础才行. htt ...

  9. Python爬虫+selenium——爬取淘宝商品信息和数据分析

    浏览器驱动 点击下载chromedrive .将下载的浏览器驱动文件chromedriver丢到Chrome浏览器目录中的Application文件夹下,配置Chrome浏览器位置到PATH环境. 需 ...

最新文章

  1. IOS之未解问题--关于IOS图像渲染CPU和GPU
  2. 怎样让小写自动转换成大写_办公软件操作技巧031:如何在word中输入大写数字...
  3. C++面试题--(五)
  4. 本地代码上传到github
  5. php项目列表,php – 如何获取类似项目的列表
  6. JQuery when
  7. 在javascript中,如何判断一个被多次encode 的url 已经被decode到原来的格式?
  8. linux挂载VMFS硬盘,ESX4.1挂载NFS共享存储(VMkernel)
  9. 读博士也有技巧:如何快乐地做研究
  10. 数据科学 IPython 笔记本 8.14 自定义 Matplotlib:配置和样式表
  11. LKMs:Loadable Kernel Modules
  12. 详解电镀废水各种工艺
  13. nRF52840脱坑指南
  14. ATmega / AVR单片机型号标识规则及选型
  15. java五子棋源代码_Java五子棋源码-Java五子棋源代码下载-西西软件下载
  16. css的div垂直居中的方法,CSS使DIV内容垂直居中的方法
  17. 2022 年十大绩效考核技巧
  18. 驾驶证到期换新证流程
  19. python程序员真实收入曝光_行!看到抖音上Python程序员晒得工资条,我沉默了.........
  20. python大数据运维常用脚本_python大数据运维

热门文章

  1. Linux Ubuntu20.04安装RTL8156网卡驱动开启巨型帧
  2. 卡巴斯基KAV/KIS 6.0.1.411正式版下载 附MP1版中文汉化+注册码
  3. CANFiber是什么?
  4. idea最新Activation code
  5. 【无标题】关于摄像头的学习
  6. 锁存器Latch和触发器Flip-flop的区别
  7. 统计单词频率 java_java 统计一个(英文)文本中频率最高的10个单词
  8. 部署MariaDB服务器
  9. arp broadcast enable命令
  10. matlab三相变压器怎么设置,simulink变压器设置