1.配置好selenium环境,selenium环境配置地址如下:
https://blog.csdn.net/liaoqingjian/article/details/116785445?spm=1001.2014.3001.5502

2.下载selenium库:

pip install selenium

3.完整代码如下:

from selenium import webdriver
from selenium.webdriver.common.keys import Keys
import time
import csvdef spider(url, keyword):driver = webdriver.Chrome()# 输入京东地址driver.get(url)driver.maximize_window()  # 窗口最大化# 定位输入框input_tag = driver.find_element_by_id('key_S')# 模拟键盘输入关键字input_tag.send_keys(keyword)# 键盘操作input_tag.send_keys(Keys.ENTER)# 等待time.sleep(5)k = []for j in range(3):if j==0:for i in range(1, 61):# 图片link = driver.find_element_by_xpath(f'//ul[@id="component_59"]/li[{i}]/a/img').get_attribute('src')# 书名name = driver.find_element_by_xpath(f'//ul[@id="component_59"]/li[{i}]/p[1]/a').text# 价格price = driver.find_element_by_xpath(f'//ul[@id="component_59"]/li[{i}]/p[3]/span[1]').text# 作者dname = driver.find_element_by_xpath(f'//ul[@id="component_59"]/li[{i}]/p[5]/span[1]/a').text#出版日期b = driver.find_element_by_xpath(f'//ul[@id="component_59"]/li[{i}]/p[5]/span[2]').text#出版社c = driver.find_element_by_xpath(f'//ul[@id="component_59"]/li[{i}]/p[5]/span[3]/a').text#评论数d = driver.find_element_by_xpath(f'//ul[@id="component_59"]/li[{i}]/p[4]/a').text#评论e = driver.find_element_by_xpath(f'//ul[@id="component_59"]/li[{i}]/p[2]').textk.append([link,name,price,dname,b,c,d,e])print(i)print(k)# 点击下一页,通过定位超链接上面的文本元素driver.find_element_by_partial_link_text('下一页').click()time.sleep(2)else:for i in range(1, 61):link = driver.find_element_by_xpath(f'//ul[@id="component_59"]/li[{i}]/a/img').get_attribute('src')# 书名name = driver.find_element_by_xpath(f'//ul[@id="component_59"]/li[{i}]/p[1]/a').text# 价格price = driver.find_element_by_xpath(f'//ul[@id="component_59"]/li[{i}]/p[3]/span[1]').text# 作者dname = driver.find_element_by_xpath(f'//ul[@id="component_59"]/li[{i}]/p[@class="search_book_author"]/span[1]/a').text# 出版日期b = driver.find_element_by_xpath(f'//ul[@id="component_59"]/li[{i}]/p[@class="search_book_author"]/span[2]').text# 出版社c = driver.find_element_by_xpath(f'//ul[@id="component_59"]/li[{i}]/p[@class="search_book_author"]/span[3]/a').text# 评论数d = driver.find_element_by_xpath(f'//ul[@id="component_59"]/li[{i}]/p[@class="search_star_line"]/a').text# 评论e = driver.find_element_by_xpath(f'//ul[@id="component_59"]/li[{i}]/p[2]').textk.append([link, name, price, dname, b, c, d, e])print(i)print(k)with open("当当python.csv", "w", newline="",encoding="utf-8") as datacsv:csvwriter = csv.writer(datacsv, dialect=("excel"))csvwriter.writerow(["图片", "书名", "价格", "作者","出版日期","出版社","评论数","评论"])for i in k:csvwriter.writerow(i)driver.quit()if __name__ == '__main__':spider('http://www.dangdang.com/', keyword='python')

4.跑通了的同学拜托给我一键三连,谢谢。

selenium获取当当网python书籍前三页相关推荐

  1. xpath提取当当网数学书前十页信息

    ''' http://category.dangdang.com/cp01.03.51.00.00.00.htmlget这些书都在一个个的li标签里,先获取所有的li,再分别对每一个li进行xpath ...

  2. 针对当当网畅销书籍榜单前500的研究分析

    目录 第一章 项目介绍 第二章 项目组织与项目计划 第三章 数据采集. 3.1 数据采集目标. 3.2 数据采集工具与方法. 3.3 数据采集流程 3.4 数据采集保存 3.5 本章小结 第四章 数据 ...

  3. python爬取当当网的书籍信息并保存到csv文件

    python爬取当当网的书籍信息并保存到csv文件 依赖的库: requests #用来获取页面内容 BeautifulSoup #opython3不能安装BeautifulSoup,但可以安装Bea ...

  4. python取前三位_python3 获取前几个高频列表元素

    python3 获取前几个高频列表元素 2020-11-20 --- 讲解对象:python3 获取前几个高频列表元素 作者:融水公子 rsgz Python3教程 most_common(N) 作用 ...

  5. Scrapy爬取当当网图书销售前100

    scrapy爬取当当网图书畅销榜 一.采集任务 爬取当当网图书畅销榜信息,获取热销图书前500相关数据. 二.网页解析 1. 打开当当网,按照图书榜>图书畅销榜 进入当当网图书畅销榜[http: ...

  6. 用selenium爬当当网商品信息

    [项目介绍] 参考崔庆才老师<Python3网络爬虫开发实战>第七章动态渲染页面爬取里爬淘宝网的实例,由于现在淘宝网查找需要先登录,故用当当网进行尝试. 1.动态加载页面的判断? F12→ ...

  7. 爬虫之获取当当网全部图书

    #encoding:utf-8##author:wuhao# #****** #爬取当当网图书,未使用框架 #main是主函数 #KindLinks.py和 获取数据信息.py 是2个封装的类 #Ki ...

  8. python取前三位_Python 实现取多维数组第n维的前几位

    Python 实现取多维数组第n维的前几位 现在我们有一个shape为(7352, 9, 128, 1)的numpy数组. 想要取出第2维的前三个数据,构成新数组(7352, 3, 128, 1) 我 ...

  9. MySQL获取每个分类下面的前三条数据

    现在项目遇到个问题,我相册图片里面有很多分类,我想取出每个分类下面的前三条数据,应该怎么做呢? 数据结构如下: DROP TABLE IF EXISTS `t_picture`; CREATE TAB ...

最新文章

  1. mac webpack 版本_晓前端周刊 第48期:EMP面向未来微前端方案正式开源了!玩转 webpack,使你的打包速度提升 90%;...
  2. 关于 SAP 标准教程编号的说明
  3. 校招真题练习011 种花(美团)
  4. 【错误记录】IntelliJ IDEA 中 Java 代码中的中文注释报错 ( Menu / File / Settings / Editor / File Encodings 中修改工程编码 )
  5. 什么样 信号_深圳停止商务公寓用地审批释放着什么样的信号,会引起房价下跌吗...
  6. MySQL中的数据查询
  7. boost::intrusive::list_base_hook用法的测试程序
  8. hdu 5036 Explosion bitset优化floyd
  9. 随机存取存储器(RAM)
  10. python 字典添加元素乱序了_Python有序字典的两个小“惊喜”
  11. 2003-can't connect to MYSQL server on 'localhost'(10038)
  12. 【转】js字符串转换成数字
  13. Rust : 宏、重复、及向量与递归实例
  14. 南自以太网103规约
  15. Python元组详解
  16. Windows 11 找不到文件C:\ProgramData\Package Cache\{xxxx}xxx.exe。请确定文件名是否正确后,再试一次。
  17. java创建临时文件
  18. 第四代编程语言_几代编程语言
  19. allegro中怎样制作和添加logo
  20. 怎么防止服务器被入侵?

热门文章

  1. CSS产品卡片动画效果的实现
  2. Spring Cloud学习:07消息总线(Spring Cloud Bus)
  3. C++实现日期类(运算符重载)
  4. 后端开发10道经典面试题的剖析, 技术方向如何决定职业方向
  5. 米联客 ZYNQ/SOC 精品教程 S02-CH24 利用AXI VDMA 实现MT9V034摄像头采集
  6. 关于kafka中的序列化
  7. RTSP协议,感觉还不错
  8. matlab中caitu_tiqu,车牌识别matlab语音版+OpenCV版+测试图像和设计文档
  9. PS制作简单的“旋转图形”
  10. python反恐精英基础版_cs客户端自动化控制鼠标和键盘操作,python+pyautogui