Python爬虫实现爬取京东手机页面的图片(实例代码)

 更新时间:2017年11月30日 10:15:13   作者:可豆豆  
下面小编就为大家分享一篇Python爬虫实现爬取京东手机页面的图片实例,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧

实例如下所示:

__author__ = 'Fred Zhao'
 
import requests
from bs4 import BeautifulSoup
import os
from urllib.request import urlretrieve
 
class Picture():
 
 def __init__(self):
  self.headers = {'User-Agent': 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_12_0) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/55.0.2883.95 Safari/537.36'}
  self.base_url = 'https://list.jd.com/list.html?cat=9987,653,655&page='
  self.base_path = os.path.dirname(__file__)
 
 def makedir(self, name):
  path = os.path.join(self.base_path, name)
  isExist = os.path.exists(path)
  if not isExist:
   os.makedirs(path)
   print("File has been created.")
  else:
   print('OK!The file is existed. You do not need create a new one.')
  os.chdir(path)
 
 def request(self, url):
  r = requests.get(url, headers=self.headers)
  return r
 
 def get_img(self, page):
  r = self.request(self.base_url + str(page))
  plist = BeautifulSoup(r.text, 'lxml').find('div', id='plist')
  item = plist.find_all('li', class_='gl-item')
  print(len(item))
  self.makedir('pictures')
  num = 0
  for i in item:
   num += 1
   imglist = i.find('div', class_='p-img')
   print(num)
   img = imglist.find('img')
   print('This is %s picture' %num)
   if img.get('src'):
    url = 'https:' + img.get('src')
    fileName = img.get('src').split('/')[-1]
    urlretrieve(url, filename=fileName)
 
   elif img.get('data-lazy-img'):
    url = 'https:' + img.get('data-lazy-img')
    fileName = img.get('data-lazy-img').split('/')[-1]
    urlretrieve(url, filename=fileName)
 
 
 
if __name__ == '__main__':
 picture = Picture()
 for i in range(2): #控制爬取的页数
  picture.get_img(i+1)

以上这篇Python爬虫实现爬取京东手机页面的图片(实例代码)就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持脚本之家。

相关文章

  • Python+Pyecharts实现散点图的绘制

    Python+Pyecharts实现散点图的绘制

    散点图是指在回归分析中,数据点在直角坐标系平面上的分布图,散点图表示因变量随自变量而变化的大致趋势,据此可以选择合适的函数对数据点进行拟合。本文将利用Python Pyecharts实现散点图的绘制,需要的可以参考一下
    2022-06-06
  • windows环境中利用celery实现简单任务队列过程解析

    windows环境中利用celery实现简单任务队列过程解析

    这篇文章主要介绍了windows环境中利用celery实现简单任务队列过程解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2019-11-11
  • 使用Python自动生成HTML的方法示例

    使用Python自动生成HTML的方法示例

    这篇文章主要介绍了使用Python自动生成HTML的方法示例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2019-08-08
  • Python调用JavaScript代码的几种方法小结

    Python调用JavaScript代码的几种方法小结

    日常Web端爬虫过程中,经常会遇到参数被加密的场景,因此,我们需要分析网页源代码通过调式,一层层剥离出关键的JS代码,使用Python去执行这段代码,本文将聊聊利用 Python 调用 JS 的4种方式,需要的朋友可以参考下
    2024-12-12
  • 解决pycharm导入numpy包的和使用时报错:RuntimeError: The current Numpy installation (‘D:\\python3.6\\lib\\site-packa的问题

    解决pycharm导入numpy包的和使用时报错:RuntimeError: The current Numpy ins

    这篇文章主要介绍了解决pycharm导入numpy包的和使用时报错:RuntimeError: The current Numpy installation (‘D:\\python3.6\\lib\\site-packa的问题,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2020-12-12
  • Python标准库之typing的用法(类型标注)

    Python标准库之typing的用法(类型标注)

    这篇文章主要介绍了Python标准库之typing的用法(类型标注),具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2021-06-06
  • python简单区块链模拟详解

    python简单区块链模拟详解

    这篇文章主要介绍了python简单区块链模拟详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2019-07-07
  • python 爬虫一键爬取 淘宝天猫宝贝页面主图颜色图和详情图的教程

    python 爬虫一键爬取 淘宝天猫宝贝页面主图颜色图和详情图的教程

    今天小编就为大家分享一篇python 爬虫一键爬取 淘宝天猫宝贝页面主图颜色图和详情图的教程,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2018-05-05
  • python中单例常用的几种实现方法总结

    python中单例常用的几种实现方法总结

    Python 的模块就是天然的单例模式,下面这篇文章主要给大家介绍了关于python中单例常用的几种实现方法,文中通过示例代码介绍的非常详细,对大家学习或者使用python单例具有一定的参考学习价值,需要的朋友们一起来看看吧
    2018-10-10
  • python监控windows服务器的进程和服务

    python监控windows服务器的进程和服务

    这篇文章主要为大家详细介绍了如何使用python监控windows服务器的进程和服务,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下
    2025-04-04

最新评论