python抓取京东商城手机列表url实例代码


Posted in Python onDecember 18, 2013
#-*- coding: UTF-8 -*-
'''
Created on 2013-12-5
@author: good-temper
'''
import urllib2
import bs4
import time
def getPage(urlStr):
    '''
                获取页面内容
    '''
    content = urllib2.urlopen(urlStr).read()
    return content
def getNextPageUrl(currPageNum):
    #http://list.jd.com/9987-653-655-0-0-0-0-0-0-0-1-1-页码-1-1-72-4137-33.html
    url =  u'http://list.jd.com/9987-653-655-0-0-0-0-0-0-0-1-1-'+str(currPageNum+1)+'-1-1-72-4137-33.html'
    #是否有下一页
    content = getPage(url);
    soup = bs4.BeautifulSoup(content)
    list = soup.findAll('span',{'class':'next-disabled'});
    if(len(list) == 0):
        return url
    return ''
def analyzeList():
    pageNum = 0
    list = []
    url = getNextPageUrl(pageNum)
    while url !='':
        soup = bs4.BeautifulSoup(getPage(url))
        pagelist = soup.findAll('div',{'class':'p-name'})
        for elem in pagelist:
            soup1 =  bs4.BeautifulSoup(str(elem))
            list.append(soup1.find('a')['href'])
        pageNum = pageNum+1
        print pageNum
        url = getNextPageUrl(pageNum)
    return list
def analyzeContent(url):
    return ''
def writeToFile(list, path):
    f = open(path, 'a')
    for elem in list:
        f.write(elem+'\n')
    f.close()
if __name__ == '__main__':
    list = analyzeList()
    print '共抓取'+str(len(list))+'条\n'
    writeToFile(list, u'E:\\jd_phone_list.dat');
Python 相关文章推荐
Python使用回溯法子集树模板解决爬楼梯问题示例
Sep 08 Python
Python+matplotlib实现计算两个信号的交叉谱密度实例
Jan 08 Python
python读取csv文件并把文件放入一个list中的实例讲解
Apr 27 Python
numpy中以文本的方式存储以及读取数据方法
Jun 04 Python
python 读取摄像头数据并保存的实例
Aug 03 Python
在PyCharm中控制台输出日志分层级分颜色显示的方法
Jul 11 Python
解决python3 安装不了PIL的问题
Aug 16 Python
python kafka 多线程消费者&手动提交实例
Dec 21 Python
Python内置函数locals和globals对比
Apr 28 Python
Python基于pandas绘制散点图矩阵代码实例
Jun 04 Python
Pyinstaller加密打包应用的示例代码
Jun 11 Python
浅谈anaconda python 版本对应关系
Oct 07 Python
python获取糗百图片代码实例
Dec 18 #Python
python算法学习之计数排序实例
Dec 18 #Python
python算法学习之基数排序实例
Dec 18 #Python
python算法学习之桶排序算法实例(分块排序)
Dec 18 #Python
python计算最大优先级队列实例
Dec 18 #Python
python计算最小优先级队列代码分享
Dec 18 #Python
python查找第k小元素代码分享
Dec 18 #Python
You might like
解析php扩展php_curl.dll不加载的解决方法
2013/06/26 PHP
php实现读取内存顺序号
2015/03/29 PHP
Zend Framework教程之Zend_Db_Table_Row用法实例分析
2016/03/21 PHP
PHP中使用CURL发送get/post请求上传图片批处理功能
2018/10/15 PHP
PHP Trait代码复用类与多继承实现方法详解
2019/06/17 PHP
javascript parseInt 大改造
2009/09/27 Javascript
Extjs NumberField后面加单位实现思路
2013/07/30 Javascript
js简单的弹出框有关闭按钮
2014/05/05 Javascript
JS实现定时自动关闭DIV层提示框的方法
2015/05/11 Javascript
基于jquery css3实现点击动画弹出表单源码特效
2015/08/31 Javascript
Bootstrap前端开发案例一
2016/06/17 Javascript
Vue.js基础指令实例讲解(各种数据绑定、表单渲染大总结)
2017/07/03 Javascript
详解Vue中一种简易路由传参办法
2017/09/15 Javascript
vue使用axios实现文件上传进度的实时更新详解
2017/12/20 Javascript
在vue中多次调用同一个定义全局变量的实例
2018/09/25 Javascript
基于vue实现微博三方登录流程解析
2020/11/04 Javascript
Python 变量类型及命名规则介绍
2013/06/08 Python
django实现用户登陆功能详解
2017/12/11 Python
python selenium 获取标签的属性值、内容、状态方法
2018/06/22 Python
对python:循环定义多个变量的实例详解
2019/01/20 Python
python开发游戏的前期准备
2019/05/05 Python
python实现windows倒计时锁屏功能
2019/07/30 Python
使用python远程操作linux过程解析
2019/12/04 Python
用Python去除图像的黑色或白色背景实例
2019/12/12 Python
利用HTML5 Canvas制作一个简单的打飞机游戏
2015/05/11 HTML / CSS
vivo智能手机官方商城:vivo
2016/09/22 全球购物
世界上最好的儿童品牌:AlexandAlexa
2018/01/27 全球购物
毕业自我鉴定书
2014/03/24 职场文书
组工干部对照检查材料
2014/08/25 职场文书
小学生纪念九一八事变演讲稿
2014/09/14 职场文书
安全守法证明
2015/06/23 职场文书
2015年成本会计工作总结
2015/10/14 职场文书
2016年“节能宣传周”活动总结
2016/04/05 职场文书
《鲁班学艺》读后感3篇
2019/11/27 职场文书
JS实现简单控制视频播放倍速的实例代码
2021/04/18 Javascript
使用Redis实现点赞取消点赞的详细代码
2022/03/20 Redis