用Python程序抓取网页的HTML信息的一个小实例

 更新时间:2015年05月02日 15:02:49   作者:cyqian  
这篇文章主要介绍了用Python程序抓取网页的HTML信息的一个小实例,用到的方法同时也是用Python编写爬虫的基础,需要的朋友可以参考下

抓取网页数据的思路有好多种,一般有:直接代码请求http、模拟浏览器请求数据(通常需要登录验证)、控制浏览器实现数据抓取等。这篇不考虑复杂情况,放一个读取简单网页数据的小例子:
目标数据

将ittf网站上这个页面上所有这些选手的超链接保存下来。

201552150315618.png (600×587)

数据请求

真的很喜欢符合人类思维的库,比如requests,如果是要直接拿网页文本,一句话搞定:

doc = requests.get(url).text

解析html获得数据

以beautifulsoup为例,包含获取标签、链接,以及根据html层次结构遍历等方法。参考见这里。下面这个片段,从ittf网站上获取指定页面上指定位置的链接。

url = 'http://www.ittf.com/ittf_ranking/WR_Table_3_A2.asp?Age_category_1=&Age_category_2=&Age_category_3=&Age_category_4=&Age_category_5=&Category=100W&Cont=&Country=&Gender=W&Month1=4&Year1=2015&s_Player_Name=&Formv_WR_Table_3_Page='+str(page)
doc = requests.get(url).text
soup = BeautifulSoup(doc)
atags = soup.find_all('a')
rank_link_pre = 'http://www.ittf.com/ittf_ranking/'

mlfile = open(linkfile,'a')
for atag in atags:
  #print atag
  if atag!=None and atag.get('href') != None:
    if "WR_Table_3_A2_Details.asp" in atag['href']:
      link = rank_link_pre + atag['href']
      links.append(link)
      mlfile.write(link+'\n')
      print 'fetch link: '+link
mlfile.close()

相关文章

  • PyCharm 常用快捷键和设置方法

    PyCharm 常用快捷键和设置方法

    下面小编就为大家分享一篇PyCharm 常用快捷键和设置方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2017-12-12
  • 对Python3之进程池与回调函数的实例详解

    对Python3之进程池与回调函数的实例详解

    今天小编就为大家分享一篇对Python3之进程池与回调函数的实例详解,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2019-01-01
  • Python爬虫获取基金列表

    Python爬虫获取基金列表

    这篇文章主要介绍了Python爬虫获取基金列表,python爬虫用来收集数据是最直接和常用的方法,可以使用python爬虫程序获得大量的数据,下文更多相关内容介绍,需要的小伙伴可以参考一下
    2022-05-05
  • 在Heroku云平台上部署Python的Django框架的教程

    在Heroku云平台上部署Python的Django框架的教程

    这篇文章主要介绍了在Heroku云平台上部署Python的Django框架的教程,Heroku云平台使用了Git版本控制系统,所以本教程主要提供了配置所需要的Git脚本,需要的朋友可以参考下
    2015-04-04
  • python中的eval函数使用实例

    python中的eval函数使用实例

    eval() 函数用来执行一个字符串表达式,并返回表达式的值,这篇文章主要介绍了python中的eval函数,需要的朋友可以参考下
    2022-11-11
  • PyTorch、torchvision和Python版本的对应关系

    PyTorch、torchvision和Python版本的对应关系

    使用PyTorch时,选择合适的Python版本是至关重要的,错误的版本组合可能导致各种兼容性问题,本文就来介绍一下PyTorch、torchvision与Python版本匹配,感兴趣的可以了解一下
    2024-03-03
  • python wordcloud库实例讲解使用方法

    python wordcloud库实例讲解使用方法

    这篇文章主要介绍了python wordcloud库实例,词云通过以词语为基本单位,更加直观和艺术地展示文本。wordcloud是优秀的词云展示的python第三方库
    2022-12-12
  • 已解决卸载pip重新安装的方法

    已解决卸载pip重新安装的方法

    粉丝群里面的一个小伙伴遇到问题跑来私信我,想用卸载pip重新安装pip,但是发生了报错(当时他心里瞬间凉了一大截,跑来找我求助,然后顺利帮助他解决了,顺便记录一下希望可以帮助到更多遇到这个问题的小伙伴
    2023-04-04
  • 基于python的matplotlib制作双Y轴图

    基于python的matplotlib制作双Y轴图

    这篇文章主要介绍了基于python的matplotlib制作双Y轴图,文中有非常详细的代码示例,对正在学习python的小伙伴们有很好地帮助,需要的朋友可以参考下
    2021-04-04
  • 利用python进行接口测试及类型介绍

    利用python进行接口测试及类型介绍

    这篇文章主要介绍了利用python进行接口测试详情,文章基于python展开对接口测试的详细介绍,具有一定的参考价值,需要的小伙伴可以参考一下
    2022-05-05

最新评论