python实现网页链接提取的方法分享

yipeiwu_com6年前Python基础

复制代码 代码如下:

#encoding:utf-8
import socket
import htmllib,formatter
def open_socket(host,servname):
    s=socket.socket(socket.AF_INET,socket.SOCK_STREAM)
    port=socket.getservbyname(servname)
    s.connect((host,port))
    return s
host=''
host=input('请输入网址\n')
mysocket=open_socket(host,'http')
message='GET http://%s/\n\n'%(host,)
mysocket.send(message)
file=mysocket.makefile()
htmldata=file.read()
file.close()
parser=htmllib.HTMLParser(formatter.NullFormatter()) 
parser.feed(htmldata)
print '\n'.join(parser.anchorlist)
parser.close()

相关文章

基于python实现的百度新歌榜、热歌榜下载器(附代码)

基于python实现的百度新歌榜、热歌榜下载器(附代码)

前言 首先声明,本工具仅仅为学习之用,不涉及版权问题,因为百度音乐里面的歌曲本身是可以下载的,而且现在百度也提供了”百度音乐播放器”,可以通过这个工具进行批量下载。 我当时做这个工具的时...

Python的ORM框架SQLObject入门实例

SQLObject和SQLAlchemy都是Python语言下的ORM(对象关系映射)解决方案,其中SQLAlchemy被认为是Python下事实上的ORM标准。当然,两者都很优秀。 一...

使用Python快速制作可视化报表的方法

使用Python快速制作可视化报表的方法

我们可以试用可视化包——Pyechart。 Echarts是百度开源的一个数据可视化JS库,主要用于数据可视化。 pyecharts是一个用于生成Echarts图标的类库。实际就是Ech...

浅谈django model的get和filter方法的区别(必看篇)

django的get和filter方法是django model常用到的,搞清楚两者的区别非常重要。 为了说明它们两者的区别定义2个models class Student(mode...

详解如何管理多个Python版本和虚拟环境

多个Python版本:在同一台机器上安装不同的Python,例如2.7和3.4。 虚拟环境:独立的环境,既可以同时安装特定版本的Python,也可以安装任何特定于项目的软件包,而不会影...