Python使用bs4获取58同城城市分类的方法

yipeiwu_com7年前Python基础

本文实例讲述了Python使用bs4获取58同城城市分类的方法。分享给大家供大家参考。具体如下:

# -*- coding:utf-8 -*-
#! /usr/bin/python
import urllib
import os, datetime, sys
from bs4 import BeautifulSoup
reload(sys) 
sys.setdefaultencoding( "utf-8" ) 
__BASEURL__ = "http://bj.58.com/"
__INITURL__ = "http://bj.58.com/hezu/"
soup=BeautifulSoup(urllib.urlopen(__INITURL__))
lv1Elements = soup.html.body.section.find('div', 'relative').find('dl', 'secitem')('a',href=True)
f=open('data.txt', 'w')
for element in lv1Elements[1:]:
  f.write((element.get_text() + '\r\n'))
  print element.get_text()
  url = __BASEURL__ + element.get('href')
  print url
  soup=BeautifulSoup(urllib.urlopen(url))
  lv2Elements = soup.html.body.section.find('div', 'relative').find('dl', 'secitem').find('div', 'subarea').find_all('a')
  texts = [t.get_text() for t in lv2Elements]
  f.write(' '.join(texts) + '\r\n\r\n')
f.close()

希望本文所述对大家的Python程序设计有所帮助。

相关文章

浅析Python数字类型和字符串类型的内置方法

一、数字类型内置方法 1.1 整型的内置方法 作用 描述年龄、号码、id号 定义方式 x = 10 x = int('10') x = int(10.1) x = int('10...

浅谈机器学习需要的了解的十大算法

浅谈机器学习需要的了解的十大算法

毫无疑问,近些年机器学习和人工智能领域受到了越来越多的关注。随着大数据成为当下工业界最火爆的技术趋势,机器学习也借助大数据在预测和推荐方面取得了惊人的成绩。比较有名的机器学习案例包括Ne...

简单介绍使用Python解析并修改XML文档的方法

问题 你想读取一个XML文档,对它最一些修改,然后将结果写回XML文档。 解决方案 使用 xml.etree.ElementTree 模块可以很容易的处理这些任务。 第一步是以通常的方...

Python实现多行注释的另类方法

Python程序的注释感觉很不合群,对于习惯了使用/**/多行注释的人来说,到Python中只能使用#号进行单行注释很痛苦。 复制代码 代码如下: # 这里是单行注释 # a = 50...

Python入门之后再看点什么好?

不止一次在微信、知乎有读者朋友跑过来问:看完了基础书,甚至看两遍了,但自己写的时候还是没思路,我该怎么办? 编程在我看来就是一门手艺活,绝不是简单通过看书就能学会的,跟学游泳、学车、学钢...