封尘网

让学习成为一种习惯!

Python3简单获取封尘网全站文章URL地址

记得很早以前用过火车头网页抓取工具,当时觉得非常牛B,这个工具可以说是推动了国内互联网的快速发展。只有经历过的才知道;当然那也是大叔级的人了,现在都流行使用Python开发爬虫。目前可以说很多公司处理数据都会用到。所以也顺着方向学了一下爬虫,本来是看到爬妹子图的教学,但是那网站做了些反爬机制,目前功夫浅啊;只能用自己的博客研究一下。

本次使用环境:

Ubuntu:16.04
Python:3.5.2

要用到的两个基本库,requests和BeautifulSoup4;还有就是chrome的开发者工具,通过它可以快速让我们找到网页的标签。

简单的爬虫框架,此图是参考天善学院的教程时自己动手画的。

本次是很简单的只爬取封尘网站内所有文章的URL地址,下一次再把所有的文章保存入库。

直接上代码:

#!/usr/bin/env python3 
# -*- coding: utf-8 -*- 
# @Time    : 2017/8/2 9:19 
# @Author  : Swper 
# @Site    : http://www.58jb.com/ 
# @Contact :hz328@qq.com 
# @File    : t1.py 
# @Software: PyCharm 

import requests 
from bs4 import BeautifulSoup 

#获取列表页所有链接: 
def listLinks(url): 
    urlList = [] 
    res = requests.get(url) 
    soup = BeautifulSoup(res.text,'html.parser') 
    for link in soup.select('.excerpt li'): 
        a = link.select('a')[0]['href'] 
        full_url = 'https://www.58jb.com' +a     #因为默认网站只有相对地址,所以要补全
        print(full_url) 

#利用range产生多个分页; 
url = 'https://www.58jb.com/page/{}.html' 
url_total = [] 
for i in range(1,7): 
    newsurl = url.format(i) 
    newsary = listLinks(newsurl) 

#最后调用函数时就可以获取到所有的网页URL地址了。 
listLinks(url)

不到三十行的代码,真过隐啊。最后效果就出来了:

由于自己的网站设计简单,很容易就做出来,新手先拿自己的练习练习。

当看到所有的URL地址时才发现,博客自从改版以来原来更新的量是这么少啊。

提醒:本文最后更新于 743 天前,文中所描述的信息可能已发生改变,请谨慎使用。