美文网首页
Python爬虫——爬取贵州省乡镇级行政区划代码(一)

Python爬虫——爬取贵州省乡镇级行政区划代码(一)

作者: 模仿打酱油 | 来源:发表于2020-06-16 13:15 被阅读0次

    对于Python爬虫,有很多成熟的框架,如scrapy、urllib2模块等,本人常用的requests+beautifulsoup,而且beautifulsoup只需要选择器select,个人认为对初学者比较容易掌握。下面以爬取行政区划代码为例,抛砖引玉!
    目标网址:http://www.stats.gov.cn/tjsj/tjbz/tjyqhdmhcxhfdm/2019/52.html

    1.安装requests+beautifulsoup
    pip install requests
    pip install beautifulsoup4
    
    2.导入requests+beautifulsoup
    import requests
    from bs4 import  BeautifulSoup
    
    3.获取网页请求
    url = 'http://www.stats.gov.cn/tjsj/tjbz/tjyqhdmhcxhfdm/2019/52.html'
    res = requests.get(url=url).content
    soup = BeautifulSoup(res, 'html.parser', from_encoding='GBK')
    
    4.检查网页元素

    光标移到行政区划代码上,右键选择“检查”,发现行政区划代码都在类名“citytr”的列表中。


    1592278386(1).jpg
    5.获取采集元素并打印
    citys = soup.select('.citytr a')
    
    for city in citys:
        print(city.string)
    

    输出结果如下:


    1592278735(1).jpg

    完整代码如下:

    import requests
    from bs4 import BeautifulSoup
    
    
    url = 'http://www.stats.gov.cn/tjsj/tjbz/tjyqhdmhcxhfdm/2019/52.html'
    res = requests.get(url=url).content
    soup = BeautifulSoup(res, 'html.parser', from_encoding='GBK')
    
    citys = soup.select('.citytr a')
    
    for city in citys:
        print(city.string)
    

    下节,我们将介绍如何结构化采集数据并保存!

    注:解析代码时,from_encoding='GBK'属性,是为了避免同一页面不同字符集编码问题!!!

    相关文章

      网友评论

          本文标题:Python爬虫——爬取贵州省乡镇级行政区划代码(一)

          本文链接:https://www.haomeiwen.com/subject/ilslxktx.html