使用python BeautifulSoup库抓取58手机维修信息


Posted in Python onNovember 21, 2013

直接上代码:

#!/usr/bin/python
# -*- coding: utf-8 -*-
import urllib
import os,datetime,string
import sys
from bs4 import BeautifulSoup
reload(sys)
sys.setdefaultencoding('utf-8')
__BASEURL__ = 'http://bj.58.com/'
__INITURL__ = "http://bj.58.com/shoujiweixiu/"
soup = BeautifulSoup(urllib.urlopen(__INITURL__))
lvlELements = soup.html.body.find('div','selectbarTable').find('tr').find_next_sibling('tr')('a',href=True)
f = open('data1.txt','a')
for element in lvlELements[1:]:
    f.write((element.get_text()+'\n\r' ))
    url = __BASEURL__ + element.get('href')
    print url
    soup = BeautifulSoup(urllib.urlopen(url))
    lv2ELements = soup.html.body.find('table','tblist').find_all('tr')
    for item in lv2ELements:
        addr = item.find('td','t').find('a').get_text()
        phone = item.find('td','tdl').find('b','tele').get_text()
        f.write('地址:'+addr +' 电话:'+ phone + '\r\n\r')
f.close()

直接执行后,存在 data1.txt中就会有商家的地址和电话等信息。
BeautifulSoup  api 的地址为: http://www.crummy.com/software/BeautifulSoup/bs4/doc/

Python 相关文章推荐
Django中的CACHE_BACKEND参数和站点级Cache设置
Jul 23 Python
浅谈python常用程序算法
Mar 22 Python
Python3.5局部变量与全局变量作用域实例分析
Apr 30 Python
python3获取当前目录的实现方法
Jul 29 Python
Transpose 数组行列转置的限制方式
Feb 11 Python
django迁移文件migrations的实现
Mar 31 Python
Python 输出详细的异常信息(traceback)方式
Apr 08 Python
基于python实现破解滑动验证码过程解析
May 28 Python
详解python中的闭包
Sep 07 Python
Python djanjo之csrf防跨站攻击实验过程
May 14 Python
python办公自动化之excel的操作
May 23 Python
Python实现PIL图像处理库绘制国际象棋棋盘
Jul 16 Python
python BeautifulSoup使用方法详解
Nov 21 #Python
python装饰器使用方法实例
Nov 21 #Python
tornado框架blog模块分析与使用
Nov 21 #Python
python迭代器的使用方法实例
Nov 21 #Python
python生成器的使用方法
Nov 21 #Python
python单链表实现代码实例
Nov 21 #Python
python双向链表实现实例代码
Nov 21 #Python
You might like
php5 mysql分页实例代码
2008/04/10 PHP
yii2使用GridView实现数据全选及批量删除按钮示例
2017/03/01 PHP
PHP 网站修改默认访问文件的nginx配置
2017/05/27 PHP
javascript 全角转换实现代码
2009/07/17 Javascript
不一样的文字闪烁 轮番闪烁
2009/11/11 Javascript
javascript实现window.print()去除页眉页脚
2014/12/30 Javascript
jQuery form插件的使用之处理server返回的JSON, XML,HTML数据
2016/01/26 Javascript
javascript实现标签切换代码示例
2016/05/22 Javascript
JS中使用正则表达式g模式和非g模式的区别
2017/04/01 Javascript
jQuery异步提交表单实例
2017/05/30 jQuery
vue使用stompjs实现mqtt消息推送通知
2017/06/22 Javascript
Vue.js项目模板搭建图文教程
2017/09/20 Javascript
jQuery实现输入框的放大和缩小功能示例
2018/07/21 jQuery
vue实现菜单切换功能
2019/05/08 Javascript
微信小程序解析富文本过程详解
2019/07/13 Javascript
ES6中Symbol、Set和Map用法详解
2019/08/20 Javascript
layui 根据后台数据动态创建下拉框并同时默认选中的实例
2019/09/02 Javascript
精读《Vue3.0 Function API》
2020/05/20 Javascript
记一次用ts+vuecli4重构项目的实现
2020/05/21 Javascript
深度解读vue-resize的具体用法
2020/07/08 Javascript
Python实现将照片变成卡通图片的方法【基于opencv】
2018/01/17 Python
Python图像处理之简单画板实现方法示例
2018/08/30 Python
解决pyshp UnicodeDecodeError的问题
2019/12/06 Python
Python基于字典实现switch case函数调用
2020/07/22 Python
CSS3中的弹性布局em运用入门详解 1em等于多少像素
2021/02/08 HTML / CSS
美国现代家具和家居商店:Apt2B
2016/08/29 全球购物
美国艺术和工艺品商店:Hobby Lobby
2020/12/09 全球购物
四川internet信息高速公路(C#)笔试题
2012/02/29 面试题
地理科学专业毕业生求职信
2013/10/15 职场文书
物理系毕业生自荐信
2013/11/01 职场文书
努力学习演讲稿
2014/05/10 职场文书
领导班子三严三实心得体会
2014/10/13 职场文书
群众路线教育实践活动学习笔记内容
2014/11/06 职场文书
文员岗位职责
2015/02/04 职场文书
幼儿园六一主持词
2015/06/30 职场文书
七年级之开学家长寄语35句
2019/09/05 职场文书