县级公交线路爬取python代码
时间: 2023-10-03 13:02:09 浏览: 54
这是一个简单的爬取县级公交线路的 Python 代码,以爬取中国广东省深圳市的公交线路为例:
```python
import requests
from bs4 import BeautifulSoup
url = 'http://www.szjt.gov.cn/xxgk/gsjj/jtxl/index.htm'
response = requests.get(url)
soup = BeautifulSoup(response.text, 'html.parser')
for li in soup.find_all('li'):
line = li.find('a').text.strip()
print(line)
```
解释一下代码:
1. 首先,我们导入必要的库,包括 requests 和 BeautifulSoup。
2. 然后,我们定义我们要爬取的 URL,这里是深圳市公交网站的县级公交线路页面。
3. 我们使用 requests 库发送 GET 请求来获取页面的 HTML 内容。
4. 然后,我们使用 BeautifulSoup 库解析 HTML 内容,并使用 find_all() 方法找到所有的 li 标签。
5. 对于每个 li 标签,我们使用 find() 方法找到 a 标签,并使用 text 属性获取公交线路名称,最后打印出来。
注意:由于不同县市的公交网站页面结构可能不同,所以需要根据具体情况进行相应修改。
相关问题
爬取山东省各个县级市的2021年3月历史天气数据python
你可以使用 Python 中的 requests 和 BeautifulSoup 库爬取历史天气数据。具体步骤如下:
1. 打开网站 http://lishi.tianqi.com/shandong/index.html
2. 找到需要爬取的县级市的历史天气页面,比如济南市的历史天气页面为 http://lishi.tianqi.com/jinan/202103.html
3. 使用 requests 库发送 GET 请求获取页面的 HTML 内容。
4. 使用 BeautifulSoup 库解析 HTML 内容,并提取出需要的数据。
5. 将数据保存到本地文件中,可以使用 csv 或者 Excel 格式保存。
下面是一份示例代码,你可以根据需要进行修改和完善:
```python
import requests
from bs4 import BeautifulSoup
import csv
# 历史天气数据页面的 URL
url_template = 'http://lishi.tianqi.com/{}/202103.html'
# 需要爬取的县级市列表
cities = ['jinan', 'qingdao', 'zibo', 'zaozhuang', 'dongying', 'yantai', 'weifang', 'jining', 'taian', 'weihai', 'rizhao', 'laiwu', 'linyi', 'dezhou', 'liaocheng', 'heze', 'binzhou']
# 请求头部信息
headers = {
'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/88.0.4324.150 Safari/537.36'
}
# 遍历每个县级市,爬取历史天气数据
for city in cities:
# 构造实际的历史天气数据页面 URL
url = url_template.format(city)
# 发送 GET 请求,获取页面内容
response = requests.get(url, headers=headers)
# 使用 BeautifulSoup 解析页面内容
soup = BeautifulSoup(response.text, 'html.parser')
# 找到历史天气数据表格
table = soup.find('div', {'class': 'tqtongji2'})
# 找到表格中的所有行
rows = table.findAll('tr')
# 创建 CSV 文件,用于保存历史天气数据
with open(f'{city}.csv', 'w', newline='', encoding='utf-8') as csvfile:
writer = csv.writer(csvfile)
# 遍历表格中的每一行,提取出日期和天气数据
for row in rows[1:]:
columns = row.findAll('td')
date = columns[0].text.strip()
weather = columns[1].text.strip()
# 将日期和天气数据写入 CSV 文件中
writer.writerow([date, weather])
```
这个示例代码将爬取山东省各个县级市在 2021 年 3 月的历史天气数据,并将数据保存到 CSV 文件中。你可以根据需要进行修改和完善。
山东省县级市的拼音列表python
可以使用Python中的字典来存储山东省县级市及其对应的拼音,示例代码如下:
```python
shandong_cities = {
"济南市": "jinan",
"青岛市": "qingdao",
"淄博市": "zibo",
"枣庄市": "zaozhuang",
"东营市": "dongying",
"烟台市": "yantai",
"潍坊市": "weifang",
"济宁市": "jining",
"泰安市": "taian",
"威海市": "weihai",
"日照市": "rizhao",
"莱芜市": "laiwu",
"临沂市": "linyi",
"德州市": "dezhou",
"聊城市": "liaocheng",
"滨州市": "binzhou",
"菏泽市": "heze"
}
```
可以根据需要修改拼音的格式,比如全部大写或者首字母大写等。