Python3 可谓是做爬虫的利器,既然是利器就能想你所想,比如我们如何从 URL 中提取域名、路径、参数等数据呢?
正则
正则是可以!不过在程序界一直流传着一个说法。有一个程序我们用正则写吧,那么你就有两个问题了。。。
除了正则,Python 标准模块 urllib
也提供类型解决方案(Python2 中的是urlparse 这个包,在 Python3 中都整合到 urllib
中了)
In [1]: from urllib.parse import urlparse
In [2]: url = 'https://blog.youkuaiyun.com/yilovexing/article/details/96432467'
In [3]: urlparse(url)
Out[3]: ParseResult(scheme='https', netloc='blog.youkuaiyun.com', path='/yilovexing/article/details/96432467', params='', query='', fragment='')
In [4]: urlparse(url).netloc
Out[4]: 'blog.youkuaiyun.com'
In [5]: urlparse(url).scheme
Out[5]: 'https'
In [6]: urlparse(url).path
Out[6]: '/yilovexing/article/details/96432467'