问 题

在python中,如何获取短链对应最终网址,现在有很多淘宝短链,我需要获取短链跳到的最终网址,这个有什么好办法吗?有的是302 有的是直接在网页用js进行跳转,,这些如何获取

解决方案

用selenium+phantonjs...

#!/usr/bin/python2.7

from twisted.internet import reactor

from twisted.internet.defer import Deferred, DeferredList, DeferredLock

from twisted.internet.defer import inlineCallbacks

from twisted.web.client import Agent, HTTPConnectionPool

from twisted.web.http_headers import Headers

from pprint import pprint

from collections import defaultdict

from urlparse import urlparse

from random import randrange

import fileinput

pool = HTTPConnectionPool(reactor)

pool.maxPersistentPerHost = 16

agent = Agent(reactor, pool)

locks = defaultdict(DeferredLock)

locations = {}

def getLock(url, simultaneous = 1):

return locks[urlparse(url).netloc, randrange(simultaneous)]

@inlineCallbacks

def getMapping(url):

# Limit ourselves to 4 simultaneous connections per host

# Tweak this as desired, but make sure that it no larger than

# pool.maxPersistentPerHost

lock = getLock(url,4)

yield lock.acquire()

try:

resp = yield agent.request('HEAD', url)

locations[url] = resp.headers.getRawHeaders('location',[None])[0]

except Exception as e:

locations[url] = str(e)

finally:

lock.release()

而且可以试试pip包

from urlunshort import resolve

resolve("http://bit.ly/qlKaI") 结果 'http://bitbucket.org/runeh/urlunshort/'

扫一扫关注IT屋

微信公众号搜索 " IT屋 ” ,选择关注与百万开发者在一起

python语言的主网址-python如何获得一个url地址对应的跳转后的最终网址相关推荐

  1. python语言的主网址-python官方网站

    广告关闭 腾讯云双11爆品提前享,精选热门产品助力上云,云服务器首年88元起,买的越多返的越多,最高满返5000元! 由于整个python语言从规范到解释器都是开源的,所以理论上,只要水平够高,任何人 ...

  2. python语言的主网站网址-python官方网站

    广告关闭 腾讯云双11爆品提前享,精选热门产品助力上云,云服务器首年88元起,买的越多返的越多,最高满返5000元! 由于整个python语言从规范到解释器都是开源的,所以理论上,只要水平够高,任何人 ...

  3. python语言程序设计嵩天-Python语言程序设计基础(第2版)嵩天课后答案

    嵩天.礼欣.黄天羽Python语言程序设计基础(第2版)习题答案本书提出了以理解和运用计算生态为目标的Python语言教学思想,在系统讲解Python语言语法的同时介绍了从数据理解到图像处理的14个P ...

  4. 如何自学python语言-我是如何学习Python语言?

    我喜欢学习新的东西,包括工具,算法,技巧等.一来是帮助我更好地解决问题,二来学习的进程令我愉悦. 我是一位数据工作者,经常会使用到各种软件和工具帮助我解决各种数据问题,比方说数据的抽取与解析,数据的加 ...

  5. Python语言学习:在python中,如何获取变量的本身字符串名字而非其值/内容及其应用(在代码中如何查找同值的所有变量名)

    Python语言学习:在python中,如何获取变量的本身字符串名字而非其值/内容及其应用(在代码中如何查找同值的所有变量名) 目录

  6. Python语言学习:利用python获取当前/上级/上上级目录路径(获取路径下的最后叶目录的文件名、合并两个不同路径下图片文件名等目录/路径案例、正确加载图片路径)之详细攻略

    Python语言学习:利用python获取当前/上级/上上级目录路径(获取路径下的最后叶目录的文件名.合并两个不同路径下图片文件名等目录/路径案例.正确加载图片路径)之详细攻略 目录 利用python ...

  7. Python语言学习:利用python语言实现调用内部命令(python调用Shell脚本)—命令提示符cmd的几种方法

    Python语言学习:利用python语言实现调用内部命令(python调用Shell脚本)-命令提示符cmd的几种方法 目录 利用python语言实现调用内部命令-命令提示符cmd的几种方法 T1. ...

  8. Python语言学习:基于python五种方法实现使用某函数名【func_01】的字符串格式('func_01')来调用该函数【func_01】执行功能

    Python语言学习:基于python五种方法实现使用某函数名[func_01]的字符串格式('func_01')来调用该函数[func_01]执行功能 目录 问题提出 代码五种设计思路 T1方法:e ...

  9. Python语言学习:解决python版本升级问题集合(python2系列→Python3系列)导致错误的总结集合

    Python语言学习:解决python版本升级问题集合(python2系列→Python3系列)导致错误的总结集合 目录 Python版本升级的原因 Text and binary data in P ...

最新文章

  1. cisco 路由器访问权限的设置
  2. 线性回归 c语言实现_C ++中的线性回归实现
  3. priority case语句
  4. 超微服务器电源短接启动图解_教你一招,让你的电脑启动速度秒杀别人
  5. 信息学奥赛一本通 1177:奇数单增序列 | OpenJudge NOI 1.10 02:奇数单增序列
  6. plsql如何显示表结构图_产品经理需了解的架构图/结构图知识
  7. java break与continue_java中的break与continue
  8. 价值5000元的报表分享
  9. 【ACL2020】最新效果显著的关系抽取框架了解一下?
  10. 学生信息管理系统(附运行效果图和源码下载)分页技术(后台封装json数据传递到前端显示,动态分页等)(Mybatis,json,ajax,jQuery实用整合示例)
  11. 温度、水汽压、湿度计算公式
  12. 基于superslide的导航栏 效果切换
  13. [渝粤教育] 徐州工业职业技术学院 橡胶原材料 参考 资料
  14. linux下显卡不工作,Ubuntu 12.04下升级Nvidia后Bumblebee无法工作解决
  15. 数字化名词解释—数字化转型
  16. 【第十六篇】Flowable事件之结束事件
  17. 高光谱图像算法实习工程师面经
  18. 支持邮件群发功能的邮箱有哪些?邮箱如何群发邮件,邮件群发怎么发呢?
  19. DNS防污染和广告拦截好用工具: AdGuard Home
  20. Serverless架构设计指南,你关心的都在这里

热门文章

  1. 解决Tomcat version 7.0 only supports J2EE 1.2, 1.3, 1.4, and Java EE 5 and 6 Web modules
  2. nodejs学习笔记(3)
  3. css关键字unset
  4. 企业面试之LeetCode刷题心得
  5. 安全漏洞整改解决方案
  6. 使用 Azure Site Recovery 将内部部署虚拟化工作负荷迁移至 Azure
  7. 自定义控件使用InnerDefaultProperty提示“内不允许包含文字内容”
  8. CCF201812-1 小明上学(100分)【序列处理】
  9. UVA11752 The Super Powers【超级幂+暴力+数论】
  10. UVA11038 How Many O's?题解