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迭代和迭代器
Mar 28 Python
听歌识曲--用python实现一个音乐检索器的功能
Nov 15 Python
tensorflow入门之训练简单的神经网络方法
Feb 26 Python
python获取程序执行文件路径的方法(推荐)
Apr 26 Python
Python3读取Excel数据存入MySQL的方法
May 04 Python
Mac安装python3的方法步骤
Aug 09 Python
Python浮点数四舍五入问题的分析与解决方法
Nov 19 Python
Python环境下安装PyGame和PyOpenGL的方法
Mar 25 Python
Python Dict找出value大于某值或key大于某值的所有项方式
Jun 05 Python
详解python安装matplotlib库三种失败情况
Jul 28 Python
python操作redis数据库的三种方法
Sep 10 Python
Django中session进行权限管理的使用
Jul 09 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出现Cannot modify header information问题的解决方法大全
2008/04/09 PHP
PHP XML数据解析代码
2010/05/26 PHP
php daddslashes()和 saddslashes()有哪些区别分析
2012/10/26 PHP
PHP利用imagick生成组合缩略图
2016/02/19 PHP
详解在PHP的Yii框架中使用行为Behaviors的方法
2016/03/18 PHP
PHP的PDO常用类库实例分析
2016/04/07 PHP
浅析Yii2 gridview实现批量删除教程
2016/04/22 PHP
PHP 数组基本操作方法详解
2016/06/17 PHP
PhpStorm2020 + phpstudyV8 +XDebug的教程详解
2020/09/17 PHP
Bootstrap基本插件学习笔记之按钮(21)
2016/12/08 Javascript
微信小程序视图template模板引用的实例详解
2017/09/20 Javascript
认识jQuery的Promise的具体使用方法
2017/10/10 jQuery
vue+Element实现搜索关键字高亮功能
2019/05/28 Javascript
vue实现固定位置显示功能
2019/05/30 Javascript
Vue开发中遇到的跨域问题及解决方法
2020/02/11 Javascript
解决vuex数据页面刷新后初始化操作
2020/07/26 Javascript
Vue实现计算器计算效果
2020/08/17 Javascript
js删除对象中的某一个字段的方法实现
2021/01/11 Javascript
[37:47]IG vs Winstrike 2018国际邀请赛小组赛BO2 第二场 8.19
2018/08/21 DOTA
Python算法之栈(stack)的实现
2014/08/18 Python
总结python爬虫抓站的实用技巧
2016/08/09 Python
Python 单元测试(unittest)的使用小结
2018/11/14 Python
Tensorflow分类器项目自定义数据读入的实现
2019/02/05 Python
Python中PyQt5/PySide2的按钮控件使用实例
2019/08/17 Python
pyqt5、qtdesigner安装和环境设置教程
2019/09/25 Python
python GUI库图形界面开发之PyQt5信号与槽事件处理机制详细介绍与实例解析
2020/03/08 Python
Python实现封装打包自己写的代码,被python import
2020/07/12 Python
推荐一些比较有用的css3新属性
2014/11/11 HTML / CSS
HTML+CSS+JavaScript实现图片3D展览的示例代码
2020/10/12 HTML / CSS
英国马莎百货印度官网:Marks & Spencer印度
2020/10/08 全球购物
介绍一下grep命令的使用
2015/06/12 面试题
优秀求职信
2014/05/29 职场文书
咖啡厅商业计划书
2014/09/15 职场文书
实习单位证明范例
2014/11/17 职场文书
子女赡养老人协议书
2016/03/23 职场文书
2019优秀干部竞聘演讲稿范文!
2019/07/02 职场文书