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 相关文章推荐
Python2.x中str与unicode相关问题的解决方法
Mar 30 Python
python中装饰器级连的使用方法示例
Sep 29 Python
用Python登录好友QQ空间点赞的示例代码
Nov 04 Python
Python 16进制与中文相互转换的实现方法
Jul 09 Python
python如何发布自已pip项目的方法步骤
Oct 09 Python
Python函数基础实例详解【函数嵌套,命名空间,函数对象,闭包函数等】
Mar 30 Python
Python的高阶函数用法实例分析
Apr 11 Python
python中eval与int的区别浅析
Aug 11 Python
python利用dlib获取人脸的68个landmark
Nov 27 Python
解决Python import docx出错DLL load failed的问题
Feb 13 Python
10款最佳Python开发工具推荐,每一款都是神器
Oct 15 Python
python创建字典及相关管理操作
Apr 13 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
Ajax PHP分页演示
2007/01/02 PHP
php记录日志的实现代码
2011/08/08 PHP
PHP中如何实现常用邮箱的基本判断
2014/01/07 PHP
PHP获取mysql数据表的字段名称和详细信息的方法
2014/09/27 PHP
正确的PHP匹配UTF-8中文的正则表达式
2015/05/13 PHP
php简单实现短网址(短链)还原的方法(测试可用)
2016/05/09 PHP
apache集成php7.3.5的详细步骤
2019/06/20 PHP
IFrame跨域高度自适应实现代码
2012/08/16 Javascript
最短的IE判断var ie=!-[1,]分析
2014/05/28 Javascript
javascript实现通过表格绘制颜色填充矩形的方法
2015/04/21 Javascript
再谈JavaScript异步编程
2016/01/27 Javascript
基于JavaScript实现文字超出部分隐藏
2016/02/29 Javascript
基于jQuery日历插件制作日历
2016/03/11 Javascript
简单掌握JavaScript中const声明常量与变量的用法
2016/05/21 Javascript
jQuery实现模拟flash头像裁切上传功能示例
2016/12/11 Javascript
Angularjs自定义指令实现三级联动 选择地理位置
2017/02/13 Javascript
Javascript 详解封装from表单数据为json串进行ajax提交
2017/03/29 Javascript
JS构造一个html文本内容成文件流形式发送到后台
2018/07/31 Javascript
vue  directive定义全局和局部指令及指令简写
2018/11/20 Javascript
浅谈Vue.set实际上是什么
2019/10/17 Javascript
ant-design-vue 实现表格内部字段验证功能
2019/12/16 Javascript
jQuery实现可以扩展的日历
2020/12/01 jQuery
[01:11:02]Secret vs Newbee 2019国际邀请赛小组赛 BO2 第一场 8.15
2019/08/17 DOTA
rhythmbox中文名乱码问题解决方法
2008/09/06 Python
python每次处理固定个数的字符的方法总结
2013/01/29 Python
Python不规范的日期字符串处理类
2014/06/10 Python
老生常谈python函数参数的区别(必看篇)
2017/05/29 Python
python psutil库安装教程
2018/03/19 Python
Win系统PyQt5安装和使用教程
2019/12/25 Python
HTML5的自定义属性data-*详细介绍和JS操作实例
2014/04/10 HTML / CSS
几个人围成一圈的问题
2013/09/26 面试题
国际商务专业学生个人的自我评价
2013/09/28 职场文书
物流专业自荐信
2014/05/23 职场文书
模具设计与制造专业求职信
2014/07/19 职场文书
请学会珍惜眼前,因为人生没有下辈子!
2019/11/12 职场文书
PHP遍历数组的6种方式总结
2021/11/17 PHP