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 SQLAlchemy基本操作和常用技巧(包含大量实例,非常好)
May 06 Python
python采用getopt解析命令行输入参数实例
Sep 30 Python
详解python中的json的基本使用方法
Dec 21 Python
Python 装饰器深入理解
Mar 16 Python
Python3 实现随机生成一组不重复数并按行写入文件
Apr 09 Python
Python3 执行系统命令并获取实时回显功能
Jul 09 Python
pytorch 可视化feature map的示例代码
Aug 20 Python
Python turtle绘画象棋棋盘
Aug 21 Python
Python中xml和dict格式转换的示例代码
Nov 07 Python
基于Python的Jenkins的二次开发操作
May 12 Python
python 实现学生信息管理系统的示例
Nov 28 Python
Python使用random模块实现掷骰子游戏的示例代码
Apr 29 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
Linux下实现PHP多进程的方法分享
2012/08/16 PHP
详谈PHP文件目录基础操作
2014/11/11 PHP
使用PHP处理数据库数据如何将数据返回客户端并显示当前状态
2016/02/16 PHP
PHP实现基于图的深度优先遍历输出1,2,3...n的全排列功能
2017/11/10 PHP
PHP7扩展开发之hello word实现方法详解
2018/01/15 PHP
jQuery学习4 浏览器的事件模型
2010/02/07 Javascript
javascript 得到变量类型的函数
2010/05/19 Javascript
JavaScript 程序编码规范
2010/11/23 Javascript
Array的push与unshift方法性能比较分析
2011/03/05 Javascript
Javascript对象中关于setTimeout和setInterval的this介绍
2012/07/21 Javascript
jquery 实现上下滚动效果示例代码
2013/08/09 Javascript
了不起的node.js读书笔记之node.js中的特性
2014/12/22 Javascript
javascript动态获取登录时间和在线时长
2016/02/25 Javascript
JavaScript解八皇后问题的方法总结
2016/06/12 Javascript
微信小程序Server端环境配置详解(SSL, Nginx HTTPS,TLS 1.2 升级)
2017/01/12 Javascript
Angular.Js中ng-include指令的使用与实现
2017/05/07 Javascript
node文件批量重命名的方法示例
2017/10/23 Javascript
利用ECharts.js画K线图的方法示例
2018/01/10 Javascript
ajax请求data遇到的问题分析
2018/01/18 Javascript
vue中通过使用$attrs实现组件之间的数据传递功能
2019/09/01 Javascript
Python设计模式之观察者模式实例
2014/04/26 Python
Python pickle模块用法实例
2015/04/14 Python
Python解析json之ValueError: Expecting property name enclosed in double quotes: line 1 column 2(char 1)
2017/07/06 Python
Python反射的用法实例分析
2018/02/11 Python
基于tensorflow指定GPU运行及GPU资源分配的几种方式小结
2020/02/03 Python
python如何提取英语pdf内容并翻译
2020/03/03 Python
python实现数字炸弹游戏
2020/07/17 Python
利用CSS3实现圆角的outline效果的教程
2015/06/05 HTML / CSS
Tommy Hilfiger澳洲官网:美国高端休闲领导品牌
2020/12/16 全球购物
银行青年文明号事迹材料
2014/05/31 职场文书
委托书怎么写
2014/07/31 职场文书
党员三严三实心得体会
2014/10/13 职场文书
2014个人年度工作总结范文
2014/12/24 职场文书
Java练习之潜艇小游戏的实现
2022/03/16 Java/Android
Linux中各个目录的作用与内容
2022/06/28 Servers
JS前端宏任务微任务及Event Loop使用详解
2022/07/23 Javascript