`
yuhai.china
  • 浏览: 161292 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

python 网页抓取(使用代理服务器),解析一例

阅读更多
#coding:utf-8
'''
Created on 2009-7-15

@author: Administrator
'''
import urllib2
import newhttplib
import lxml.html as x  

def getmusic(num,soc=None):
    s=num.split(':')
    s[0]=s[0].strip()
    s[1]=s[1].strip()
    s[2]=s[2].strip()
    h1 = newhttplib.HTTPConnection('10.0.0.172',80)
    h1.auto_open = 0
    h1.connect(soc)
    url='http://218.200.160.29/s3/i/app/search/musicResult.jsp?qd=1956&CH=12530-wap-lslb&v=1864&tplpath=/s3/i/qrc/&type=all&keyword='+urllib2.quote(s[0]+" "+s[1]) 
    h1.request("GET",url) 
    r1 = h1.getresponse()
    content=r1.read()
    doc=x.document_fromstring(content)  
    alist=doc.xpath("//a")
    print s[0],s[1]
    for a in alist:
        c1= a.text_content()
        try:
            if c1.find(s[0])>=0 and c1.find(s[1])>=0:
                print c1
                print c1.find(s[0]),c1.find(s[1])
                nexturl='http://218.200.160.29'+a.get('href') 
                h1.request("GET",nexturl) 
                r1 = h1.getresponse()
                content=r1.read()
                print content
                doc=x.document_fromstring(content)  
                blist=doc.xpath("//a")
                for b in blist:
                    bcontent=b.text_content()
                    if bcontent.find('高潮版')>=0 or bcontent.find('超长版')>=0:
                         print bcontent
                         bhref= b.get('href')
                         nnexturl='http://218.200.160.29'+bhref
                         h1.request("GET",nnexturl) 
                         r1 = h1.getresponse()
                         ccontent=r1.read()
                         #print ccontent
                         doc=x.document_fromstring(ccontent)  
                         clist=doc.xpath("//a")
                         for c in clist:
                             chref=c.get('href')
                             if chref.find('218.200.160.10')>=0:
                                 print chref
                                 sb2=s[2][11:]
                                 print sb2
                                 if chref.find(sb2)>=0:
                                     print u'找到匹配歌曲开始下载。。。'
                                     h1.request("GET",chref) 
                                     r1 = h1.getresponse()
                                     print r1.status
                                     dcontent=r1.read()
                                     f=open('./test.mp3','wb')
                                     f.write(dcontent)
                                     f.close()
        except BaseException,e:
            print e
            
if __name__ == '__main__':
    getmusic('相信:曾建军:600902000005714466')

分享到:
评论

相关推荐

    python爬虫抓取网页数据开发教程.docx

    通过本教程的学习,您应该已经掌握了使用Python抓取网页数据的基本方法。从环境搭建到具体实践,每一步都详细讲解了如何使用Python中的`requests`和`BeautifulSoup`库来完成这一过程。无论是对于初学者还是有一定...

    网页抓取例子

    在本例中,我们关注的标题是“网页抓取例子”,这表明我们将探讨如何实现一个简单的网页抓取程序。描述部分虽然为空,但我们可以从提供的博文链接(https://guoyiqi.iteye.com/blog/735515)中获取更多信息,它可能...

    python爬虫抓取mm图片

    在Python编程领域,爬虫是一种常见的技术,用于自动地遍历和下载网页内容。本案例主要探讨了如何使用Python编写爬虫来抓取网络上的美女图片。以下将详细阐述涉及的知识点: 首先,Python爬虫的基本原理是通过模拟...

    Python 语言实现的抓取网页内容与列文件目录

    本篇将重点讲解如何利用Python抓取网页内容以及如何列文件目录。 首先,让我们深入理解Python中的Web Scraping。Web Scraping是指通过编程方式自动提取网页上的信息。Python中有多个强大的库来支持这项工作,如...

    python抓取高德POI数据,突破数据量限制

    综上所述,Python抓取高德POI数据是一个涉及网络请求、数据解析、文件操作以及策略设计的过程。通过合理地编写和优化脚本,结合高德地图的API,我们可以有效地获取和管理大量的POI信息,服务于各种GIS应用和数据分析...

    python 爬虫之抓取页面图片

    在本例中,我们将深入探讨如何使用Python抓取网站上的图片,并了解相关的知识点。 首先,我们需要了解基础的网络请求库,如`requests`。`requests`库允许我们向服务器发送HTTP请求,获取响应,进而获取网页的HTML源...

    python简单爬虫抓取新闻板块网页内容实例

    本实例主要探讨如何使用Python编写一个简单的爬虫,针对中国稀土网的新闻中心国内新闻板块,抓取首页的新闻标题、发布时间、来源和正文。下面将详细阐述实现这个任务所需的关键知识点。 1. **Python基础**:Python...

    抓取整站网页

    在本例中,"webreaper97.exe"可能是一个Web抓取工具,用于帮助用户方便地完成整站网页抓取。这类工具通常提供图形用户界面,简化了编程过程,但可能不如自定义爬虫灵活。而"PCHome_download.html"可能是一个下载记录...

    抓取网页信息

    网页信息抓取是一种常见的数据获取技术,特别是在互联网大数据分析、网站维护、搜索引擎优化等领域中有着广泛应用。本教程将介绍如何通过编程方式抓取网页信息,提取种子地址,并下载相关图片。 首先,我们需要了解...

    简单的python网页爬虫

    本教程将带你走进Python爬虫的世界,以网易新闻网站为例,逐步介绍如何构建一个简单的网页爬虫。 首先,我们要了解Python爬虫的基本原理。爬虫是通过模拟浏览器发送HTTP请求到服务器,获取服务器返回的HTML或JSON等...

    基于Python3的动态网站爬虫,使用selenium+phantomjs实现爬取动态网站, 本项目以爬取今日头条为例.zip

    本项目将详细介绍如何利用Python3结合selenium和phantomjs来爬取动态加载的网页内容,以今日头条为例,进行实战演练。 1. **Python3基础知识**:Python3是这个爬虫项目的基石,它提供了高效的编程接口和丰富的标准...

    Python编写网页爬虫

    本教程将以http://zuidazy.net电影网站为例,探讨如何使用Python实现一个基础的网页爬虫。 首先,我们需要了解网页爬虫的基本工作原理。网页爬虫是通过模拟浏览器发送HTTP请求(GET或POST)到服务器,然后接收...

    python抓取需要扫微信登陆页面

    Python抓取微信登陆页面涉及到的是网络爬虫技术,主要用于从特定网页中提取所需信息。在本案例中,目标页面是一个需要通过微信扫码进行登录的公司网页。以下是详细的知识点解析: 1. **登录机制**: 微信扫码登录...

    掌握定向网络数据爬取和网页解析的基本能力,python网络爬虫与信息提取,python爬虫学习基础资料

    以BeautifulSoup为例,它是Python的一个强大的HTML和XML解析库,能够方便地提取和操作数据: ```python from bs4 import BeautifulSoup soup = BeautifulSoup(html_content, 'html.parser') # 使用BeautifulSoup的...

    数据抓取数据抓取数据抓取数据抓取

    在本例中,"Spliter 数据抓取"可能是指在数据抓取过程中,使用特定工具或自定义程序来分割抓取到的大批量数据,使其更便于管理和分析。例如,可能有一个名为"Spliter"的工具,它可以自动将大文件拆分成小块,每个块...

    Python实现并行抓取整站40万条房价数据(可更换抓取城市)

    在Python中实现大规模数据抓取,特别是针对40万条房价数据这样的整站抓取,需要考虑到效率和可扩展性。本案例以房价网为例,介绍了如何通过优化代码逻辑和利用并行处理来提高抓取速度。以下是实现这一目标的关键知识...

    Python简单实现网页内容抓取功能示例

    在Python编程中,网页内容抓取是数据挖掘和网络分析的重要组成部分。本示例主要讲解如何使用Python的urllib模块来实现这一功能。urllib模块提供了基础的URL处理功能,包括打开URL并获取内容。下面将详细介绍两个基本...

    抓取网页PageExtractor

    网页抓取涉及编写脚本或使用已有的爬虫框架(如Python的Scrapy),通过HTTP或HTTPS协议与Web服务器进行交互,请求网页内容。当服务器响应时,爬虫解析返回的HTML或其他格式的文档,从中提取所需的数据。 在这个特定...

    静态网页抓取

    本文将详细介绍如何使用Python语言进行静态网页抓取,并以豆瓣网Top250电影为例进行具体说明。 #### Python网络爬虫基础 Python因其简洁易读的语法、强大的第三方库支持以及高效的开发效率而被广泛应用于网络爬虫...

    Python编写网页爬虫优化版

    在这个优化版的Python爬虫教程中,我们将以http://zuidazy.net电影网站为例,深入探讨如何高效、稳定地抓取网页内容。 首先,要构建一个爬虫,你需要了解HTTP协议的基础知识,它是网络通信的基础,用于客户端(如...

Global site tag (gtag.js) - Google Analytics