Python爬取京东的商品分类与链接


Posted in Python onAugust 26, 2016

前言

本文主要的知识点是使用Python的BeautifulSoup进行多层的遍历。

Python爬取京东的商品分类与链接

如图所示。只是一个简单的哈,不是爬取里面的隐藏的东西。

示例代码

from bs4 import BeautifulSoup as bs
import requests
headers = {
  "host": "www.jd.com",
  "User-Agent": "Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/47.0.2526.80 Safari/537.36 Core/1.47.933.400 QQBrowser/9.4.8699.400",
  "Accept": "text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8"
  }
session = requests.session()
def get_url():
  renspned = bs(session.get('http://www.jd.com/',headers = headers).text,'html.parser')
  for i in renspned.find("div", {"class": "dd-inner"}).find_all("a",{"target":"_blank"}):
    print(i.get_text(),':',i.get('href'))
get_url()

运行这段代码以及达到了我们的目的。

Python爬取京东的商品分类与链接

我们来解读一下这段代码。

首先我们要访问到京东的首页。

然后通过BeautifulSoup对访问到的首页进行解析。

这个时候,我们就要定位元素,来获取我们需要的东西了。

在浏览器中通过F12,我们可以看到下图所示的东西:

Python爬取京东的商品分类与链接

我们来看看下面这句代码:

for i in renspned.find("div", {"class": "dd-inner"}).find_all("a",{"target":"_blank"})

这一行代码完全满足我们的需求,首先用find方法,定位到了class=“dd-inner”的div,然后使用find_all对该标签下所有的a标签。

最后,我想打印出所有的商品分类以及对应的链接,于是,我使用了i.get_text()i.get('href')的方法终于获取到了商品分类和对应的链接。

总结

其实不是很难,主要是要用对方法。笔者因为是初学方法没有用对。花了差不多两天时间才搞定。这里也是告诉大家,可以使用find().find_all()的方法进行多层的遍历。以上就是我利用Python爬取京东的商品分类与链接的一些经验,希望对大家学习python能有所帮助。

Python 相关文章推荐
Python Trie树实现字典排序
Mar 28 Python
Python实现的tab文件操作类分享
Nov 20 Python
Python部署web开发程序的几种方法
May 05 Python
DataFrame 将某列数据转为数组的方法
Apr 13 Python
python实现批量修改图片格式和尺寸
Jun 07 Python
python 弹窗提示警告框MessageBox的实例
Jun 18 Python
python单例模式原理与创建方法实例分析
Oct 26 Python
浅谈Python类中的self到底是干啥的
Nov 11 Python
Django 实现xadmin后台菜单改为中文
Nov 15 Python
python如何求圆的面积
Jul 01 Python
Python如何定义接口和抽象类
Jul 28 Python
Python爬取豆瓣数据实现过程解析
Oct 27 Python
Python设计模式之抽象工厂模式
Aug 25 #Python
简单谈谈python中的Queue与多进程
Aug 25 #Python
利用Python自动监控网站并发送邮件告警的方法
Aug 24 #Python
巧用python和libnmapd,提取Nmap扫描结果
Aug 23 #Python
Python中属性和描述符的正确使用
Aug 23 #Python
Python实现基本线性数据结构
Aug 22 #Python
Python进行数据提取的方法总结
Aug 22 #Python
You might like
配置最新的PHP加MYSQL服务器
2006/10/09 PHP
从零开始学YII2框架(二)通过 Composer 安装扩展插件
2014/08/20 PHP
SCP远程VPS快速搬家和WDCP升级php5.3安装memcached和eaccelerator教程
2017/07/27 PHP
一组JS创建和操作表格的函数集合
2009/05/07 Javascript
JavaScript Chart 插件整理
2010/06/18 Javascript
限制上传文件大小和格式的jQuery插件实例
2015/01/24 Javascript
基于JavaScript实现一定时间后去执行一个函数
2015/12/14 Javascript
jQuery操作cookie
2016/08/08 Javascript
easyui取消表单实时验证,提交时统一验证的简单实例
2016/11/07 Javascript
jquery网页日历显示控件calendar3.1使用详解
2016/11/24 Javascript
EasyUI学习之Combobox级联下拉列表(2)
2016/12/29 Javascript
javascript常用经典算法详解
2017/01/11 Javascript
基于Node.js的WebSocket通信实现
2017/03/11 Javascript
webpack配置的最佳实践分享
2017/04/21 Javascript
JSON 数据格式详解
2017/09/13 Javascript
JS实现的简单表单验证功能完整实例
2017/10/14 Javascript
详解如何在webpack中做预渲染降低首屏空白时间
2018/08/22 Javascript
详解mpvue scroll-view自动回弹bug解决方案
2018/10/01 Javascript
浅谈vuex的基本用法和mapaction传值问题
2019/11/08 Javascript
python机器学习之神经网络(一)
2017/12/20 Python
Python之pymysql的使用小结
2019/07/01 Python
python实现函数极小值
2019/07/10 Python
给你一面国旗 教你用python画中国国旗
2019/09/24 Python
基于python2.7实现图形密码生成器的实例代码
2019/11/05 Python
django Layui界面点击弹出对话框并请求逻辑生成分页的动态表格实例
2020/05/12 Python
详解pandas.DataFrame.plot() 画图函数
2020/06/14 Python
简述Html5 IphoneX 适配方法
2018/02/08 HTML / CSS
Windows和Linux动态库应用异同
2016/07/28 面试题
美丽乡村建设实施方案
2014/03/23 职场文书
推普周国旗下讲话稿
2014/09/21 职场文书
2014年煤矿工人工作总结
2014/12/08 职场文书
九年级语文教学反思
2016/03/03 职场文书
探讨Java中的深浅拷贝问题
2021/06/26 Java/Android
Java反应式框架Reactor中的Mono和Flux
2021/07/25 Java/Android
webpack的移动端适配方案小结
2021/07/25 Javascript
oracle索引总结
2021/09/25 Oracle