python urllib爬取百度云连接的实例代码


Posted in Python onJune 19, 2017

翻看自己以前写的程序,发现写过一个爬取盘多多百度云资源的东西,完全是当时想看变形金刚才自己写的,而且当时第一次接触python大概写了有2天才搞出来这个程序,学习python语言,可以看得出来那时候的代码写的真的low。虽然现在也不怎么样,哈哈,一直学习中,不做过多解释,上图上代码,因为变量的声明是什么我自己也忘了(手动傲娇),连写入文件当时都不会哈哈哈哈哈哈哈哈,也不知道class中可以通过init初始化,唉学习python原来我学到了这么多东西,感谢python

python urllib爬取百度云连接的实例代码

from bs4 import BeautifulSoup
import urllib
import requests
import re

adr =[]

''''对搜素资源名字进行url编码'''
search_text =raw_input('请输入搜索资源名:')
search_text = search_text.decode('gbk')
search_text = search_text.encode('utf-8')
search_text = urllib.quote(search_text)


''''获取文件地址'''
home = urllib.urlopen('http://www.panduoduo.net/s/name/'+search_text)


'''获取百度云地址'''
def getbaidu(adr):
  for i in adr:
    url = urllib.urlopen('http://www.panduoduo.net'+i)
    bs = BeautifulSoup(url)
    bs1 = bs.select('.dbutton2')
    href = re.compile('http\%(\%|\d|\w|\/\/|\/|\.)*')
    b = href.search(str(bs1))
    name = str(bs.select('.center')).decode('utf-8')
    text1 = re.compile('\<h1\sclass\=\"center"\>[\d|\w|\D|\W]*\</h1\>')
    text2 = text1.search(name)
    rag1 = re.compile('\>[\d|\w|\D|\W]*\<')
    if text2:
      text3 = rag1.search(text2.group())
      if text3:
        print text3.group()
    if b:
      text = urllib.unquote(str(b.group())).decode('utf-8')
      print text

'''初始化'''
def init(adr):
  soup = BeautifulSoup(home)
  soup = soup.select('.row')
  pattern = re.compile('\/r\/\d+')
  for i in soup:
    i = str(i)
    adress = pattern.search(i)
    adress = adress.group()
    adr.append(adress)


print 'running---------'    
init(adr)
getbaidu(adr)

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
利用matplotlib+numpy绘制多种绘图的方法实例
May 03 Python
Python去除字符串前后空格的几种方法
Mar 04 Python
Pyinstaller 打包exe教程及问题解决
Aug 16 Python
Flask项目中实现短信验证码和邮箱验证码功能
Dec 05 Python
Django项目使用ckeditor详解(不使用admin)
Dec 17 Python
Python如何基于smtplib发不同格式的邮件
Dec 30 Python
Python+PyQt5+MySQL实现天气管理系统
Jun 16 Python
keras中epoch,batch,loss,val_loss用法说明
Jul 02 Python
python爬虫之爬取笔趣阁小说
Apr 22 Python
Python的三个重要函数详解
Jan 18 Python
Python数据结构之队列详解
Mar 21 Python
详解OpenCV获取高动态范围(HDR)成像
Apr 29 Python
Python的IDEL增加清屏功能实例
Jun 19 #Python
利用python爬取散文网的文章实例教程
Jun 18 #Python
Python3中简单的文件操作及两个简单小实例分享
Jun 18 #Python
python实现各进制转换的总结大全
Jun 18 #Python
Mac 上切换Python多版本
Jun 17 #Python
利用python实现xml与数据库读取转换的方法
Jun 17 #Python
用python写个自动SSH登录远程服务器的小工具(实例)
Jun 17 #Python
You might like
一个简单php扩展介绍与开发教程
2010/08/19 PHP
php阻止页面后退的方法分享
2014/02/17 PHP
PHP使用gmdate实现将一个UNIX 时间格式化成GMT文本的方法
2015/03/19 PHP
php判断电子邮件是否正确方法
2018/12/04 PHP
Laravel框架下载,安装及路由操作图文详解
2019/12/04 PHP
解决自定义$(id)的方法与jquery选择器$冲突的问题
2014/06/14 Javascript
js使用递归解析xml
2014/12/12 Javascript
javascript 闭包详解
2015/07/02 Javascript
JS给Array添加是否包含字符串的简单方法
2016/10/29 Javascript
Vue 全局loading组件实例详解
2018/05/29 Javascript
vue-router判断页面未登录自动跳转到登录页的方法示例
2018/11/04 Javascript
JavaScript基础之静态方法和实例方法分析
2018/12/26 Javascript
vue v-for 使用问题整理小结
2019/08/04 Javascript
vue 集成 vis-network 实现网络拓扑图的方法
2019/08/07 Javascript
layui问题之自动滚动二级iframe页面到指定位置的方法
2019/09/18 Javascript
详解从vue-loader源码分析CSS Scoped的实现
2019/09/23 Javascript
浅析微信小程序modal弹窗关闭默认会执行cancel问题
2019/10/14 Javascript
使用vue打包进行云服务器上传的问题
2020/03/02 Javascript
js瀑布流布局的实现
2020/06/28 Javascript
[50:28]LGD女子学院第三期 DOTA2复仇之魂教学
2013/12/24 DOTA
[47:12]TFT vs Secret Supermajor小组赛C组 BO3 第三场 6.3
2018/06/04 DOTA
Python 分析Nginx访问日志并保存到MySQL数据库实例
2014/03/13 Python
python3设计模式之简单工厂模式
2017/10/17 Python
python中pylint使用方法(pylint代码检查)
2018/04/06 Python
python3.6 tkinter实现屏保小程序
2019/07/30 Python
解决安装python3.7.4报错Can''t connect to HTTPS URL because the SSL module is not available
2019/07/31 Python
python+opencv实现车牌定位功能(实例代码)
2019/12/24 Python
python使用PIL剪切和拼接图片
2020/03/23 Python
利用Python实现学生信息管理系统的完整实例
2020/12/30 Python
建筑毕业生自我鉴定
2013/10/18 职场文书
一句话工作感言
2014/03/01 职场文书
教育英语专业毕业生的求职信
2014/03/13 职场文书
现金出纳岗位职责
2014/03/15 职场文书
学习党章的体会
2014/11/07 职场文书
JPA如何使用entityManager执行SQL并指定返回类型
2021/06/15 Java/Android
Python OpenCV之常用滤波器使用详解
2022/04/07 Python