入门爬虫(函数封装)-Python

原创 2018年04月17日 11:10:54

以面向过程的思维,第一个入门爬虫。运用模块:requests,os,re。

第一个爬虫,仅体验爬虫乐趣。所以指定访问url,没有采用bs4模块,没有函数封装,亦没有编写为对象。日后会对本脚本改进。仅仅是分享第一个简单爬虫的乐趣XD。

思路为:1.解析url(requests模块)    2.得到源码text    3.正则过滤text(re模块)    4.下载信息    5.清洗信息    6.信息储存

import requests
import re
import os

def url2text(url):
	temp_url = url
	temp_rsp = requests.get(temp_url)
	temp_rsp.encoding = 'utf-8'
	temp_tex = temp_rsp.text
	return temp_tex
	
def save_path(path,title):
	temp_path = path + title
	if not os.path.exists(temp_path):
		os.mkdir(temp_path)
	os.chdir(temp_path)

def chap_item_get(url_list):
	c_url = []
	c_tit = []
	c_list = []
	for each in url_list:
		temp_url,temp_tit = each
		temp_tit = temp_tit.lstrip()
		if 'book' not in temp_url:
			temp_url ='http://www.8wenku.com%s' %temp_url
			c_url.append(temp_url)
			c_tit.append(temp_tit)
	c_list.append(c_url)
	c_list.append(c_tit)
	return c_list
	
def chap_download(item_list):
	list_leng = len(item_list[0])
	for  i in range(list_leng):
		chp_tit = item_list[1][i]
		print(chp_tit)
		if 	'章'	in chp_tit or \
			'rolo'	in chp_tit or \
			'pilo'	in chp_tit or \
			'PILO'	in chp_tit or \
			'pillo'	in chp_tit or \
			'过场'	in chp_tit or \
			'幕间'	in chp_tit or \
			'后记'	in chp_tit or \
			'hap'	in chp_tit:		
			fb = open('%s.txt' %chp_tit,'w',encoding='utf-8')
			chp_text = url2text(item_list[0][i])
			chp_cont = re.findall(r'为你一网打尽!<br><br />(.*?)</div>',chp_text,re.S)[0]
			chp_cont = chp_cont.replace('<br />','')
			fb.write(chp_tit)
			fb.write(chp_cont)
			fb.close()
			cha_cont = []
			print('%s 爬取成功' %chp_tit)
			print('='*60)
		else:
			print('%s 跳过!!' %chp_tit)	
			print('='*60)
		
url = 'http://www.8wenku.com/book/1498'
path = input('请输入保存路径:')

def download_novel(path,url):
	
	html_text = url2text(url)
	title = re.findall(r'<h2 class="tit">《(.*?)》</h2>',html_text)[0]
	url_list = re.findall(r'<a target="_blank" href="(.*?)">(.*?)</a>',html_text)

	save_path(path,title)
	
	item_list = chap_item_get(url_list)
	
	chap_download(item_list)
		
download_novel(path,url)

入门Python爬虫开发

-
  • 1970年01月01日 08:00

一小时入门 Python 3 网络爬虫-转载

一、前言 强烈建议:请在电脑的陪同下,阅读本文。本文以实战为主,阅读过程如稍有不适,还望多加练习。 本文的实战内容有: 网络小说下载(静态网站) 优美壁纸下载(动态网站) 爱奇艺VIP视...
  • fu_tester
  • fu_tester
  • 2017-11-14 16:33:15
  • 1800

Python3网络爬虫快速入门实战解析(一小时入门 Python 3 网络爬虫)

转载请注明作者和出处: http://blog.csdn.net/c406495762  Github代码获取:https://github.com/Jack-Cherish/python-spid...
  • u012662731
  • u012662731
  • 2017-11-15 09:39:43
  • 6212

1小时入门 Python 爬虫(上)

随着网络的迅速发展,万维网成为大量信息的载体,如何有效地提取并利用这些信息成为一个巨大的挑战。数据越来越值钱,爬虫工程师也越来越受欢迎。 本场 Chat 主要介绍的内容如下: Python 基础知识...
  • valada
  • valada
  • 2018-04-12 10:44:05
  • 80

&quot;玩转<em>Python爬虫</em>——入门与实践&quot;课程源码

<em>python爬虫</em>从入门到精通全套 - CSDN博客 <em>Python</em> <em>爬虫</em>入门 - CSDN博客 <em>Python</em>3网络<em>爬虫</em>快速入门实战解析(<em>一小时</em>入门 <em>Python</em> 3 网络<em>爬虫</em>) <em>Python</em>网络<em>爬虫</em>从入门到...
  • 2018年04月17日 00:00

基于Python的实时爬虫每小时PM2.5等污染物数据

01# coding:utf-802import threading03import urllib04import re,sys05import time06import hashlib07impor...
  • beiniao520
  • beiniao520
  • 2018-03-16 15:33:50
  • 113

一小时爬千万数据的新浪微博爬虫

分享一个新浪微博的爬虫,基于 Scrapy + MongoDB 实现,号称一小时可爬千万条数据。作者:LiuXingMing来源:http://blog.csdn.net/bone_ace/artic...
  • sfM06sqVW55DFt1
  • sfM06sqVW55DFt1
  • 2018-01-19 00:00:00
  • 365

python3 [爬虫入门实战] 爬虫之爬取盘多多文档(百万数据)

有一次在简书上不小心看到这个爬虫上百万的数据,确实是上百万啊。我真的日了仙人板板了。 可以看一下网站:http://www.panduoduo.net/c/4/16 确实是挺多的数据。 先上...
  • xudailong_blog
  • xudailong_blog
  • 2017-07-03 20:08:09
  • 962

python爬虫入门教程(一):开始爬虫前的准备工作

python爬虫(数据采集)入门教程
  • aaronjny
  • aaronjny
  • 2017-09-07 18:08:50
  • 3019

python爬虫从入门到放弃(一)之初识爬虫

什么是爬虫?网络爬虫(又被称为网页蜘蛛,网络机器人,在FOAF社区中间,更经常的称为网页追逐者),是一种按照一定的规则,自动地抓取万维网信息的程序或者脚本。另外一些不常使用的名字还有蚂蚁、自动索引、模...
  • omnispace
  • omnispace
  • 2018-01-18 16:48:21
  • 465
收藏助手
不良信息举报
您举报文章:入门爬虫(函数封装)-Python
举报原因:
原因补充:

(最多只允许输入30个字)