python爬网站数据实例-Python爬虫实例_城市公交网络站点数据的爬取方法

本文介绍如何使用Python爬虫从8684网站抓取北京公交线路的详细信息,包括线路名、类型、运行时间、票价、公交公司等,并解析上行、下行站点。通过示例代码展示了完整的爬取流程,最终将数据保存到txt文件。

爬取的站点:http://beijing.8684.cn/

20180110094815.jpg

(1)环境配置,直接上代码:

# -*- coding: utf-8 -*-

import requests ##导入requests

from bs4 import BeautifulSoup ##导入bs4中的BeautifulSoup

import os

headers = {'User-Agent':'Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/49.0.2623.221 Safari/537.36 SE 2.X MetaSr 1.0'}

all_url = 'http://beijing.8684.cn' ##开始的URL地址

start_html = requests.get(all_url, headers=headers)

#print (start_html.text)

Soup = BeautifulSoup(start_html.text, 'lxml') # 以lxml的方式解析html文档

(2)爬取站点分析

1、北京市公交线路分类方式有3种:

20180110094835.jpg

本文通过数字开头来进行爬取,"F12”启动开发者工具,点击"Elements”,点击"1”,可以发现链接保存在

里面,故只需要提取出div里的href即可:

20180110094855.jpg

代码:

all_a = Soup.find("div',class_='bus_kt_r1').find_all("a')

2、接着往下,发现每1路的链接都在

的 里面,取出里面的herf即为线路网址,其内容即为线路名称,代码:

href = a['href'] #取出a标签的href 属性

html = all_url + href

second_html = requests.get(html,headers=headers)

#print (second_html.text)

Soup2 = BeautifulSoup(second_html.text, 'lxml')

all_a2 = Soup2.find('div',class_='cc_content').find_all('div')[-1].find_all('a')

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值