代码如下:

复制在python3上先试试吧^_^

# -*- coding: utf-8 -*-
"""
Created on Mon Jun 12 13:27:59 2017 @author: admin
""" import urllib.request
import os
import re
from bs4 import BeautifulSoup
import xlwt os.chdir(r'C:\Users\admin\Desktop') #把文件储存至桌面
url='http://www.kuaidaili.com/' #网页地址
req=urllib.request.Request(url) #打开
req.add_header('User-Agent','Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/55.0.2883.87 Safari/537.36')
#增加User-Agent,更改访问的信息,别让后台太关注
response=urllib.request.urlopen(req) #继续打开
html=response.read().decode('utf-8') #编码,变为str格式
soup=BeautifulSoup(html,'lxml') #这个模块太好用了,这个模块也是这个脚本的核心 ww = soup.find_all('tbody')
ww=str(ww)
#rr = re.findall(r'<td (.*)</td>',ww)
#print (ww) #这几行代码都没有用,但可以发现,ww是不能直接拿来
#print(rr) #进行检索的,需要要str转一下格式
biaoti=re.findall(r'"(.*)"',ww)
biaoti = set(biaoti) #把标题去冗余
biaoti=list(biaoti)
biaoti=list(reversed(biaoti)) #所有元素翻转, item = biaoti.pop(0)
biaoti.insert(2, item)
# 弹出第一个元素,并作为第三个元素插入,来进行位置的调换 list_name=[]
result=[] for guanjianzi in biaoti:
# if rr[i].find(guanjianzi) != -1:
list_name=re.findall(r'"%s">(.*)</td>'%guanjianzi,ww)
list_name.insert(0,guanjianzi) #插入标题
result.extend(list_name) hh=[] for i in range(0,len(result),11): #由一个列表变为
hh.append(result[i:i+11]) #一个有很多个列表组成的嵌套列表 workbook=xlwt.Workbook()
worksheet=workbook.add_sheet('sheet1',cell_overwrite_ok = True) for i in range(len(hh)):
for e in range(len(hh[i])):
worksheet.write(e,i,hh[i][e])
workbook.save('123.xls')

python--爬取http://www.kuaidaili.com/并保存为xls的更多相关文章

  1. python爬取某个网站的图片并保存到本地

    python爬取某个网站的图片并保存到本地 #coding:utf- import urllib import re import sys reload(sys) sys.setdefaultenco ...

  2. 使用Python爬取微信公众号文章并保存为PDF文件(解决图片不显示的问题)

    前言 第一次写博客,主要内容是爬取微信公众号的文章,将文章以PDF格式保存在本地. 爬取微信公众号文章(使用wechatsogou) 1.安装 pip install wechatsogou --up ...

  3. Python 爬取所有51VOA网站的Learn a words文本及mp3音频

    Python 爬取所有51VOA网站的Learn a words文本及mp3音频 #!/usr/bin/env python # -*- coding: utf-8 -*- #Python 爬取所有5 ...

  4. python爬取网站数据

    开学前接了一个任务,内容是从网上爬取特定属性的数据.正好之前学了python,练练手. 编码问题 因为涉及到中文,所以必然地涉及到了编码的问题,这一次借这个机会算是彻底搞清楚了. 问题要从文字的编码讲 ...

  5. python爬取某个网页的图片-如百度贴吧

    python爬取某个网页的图片-如百度贴吧 作者:vpoet mail:vpoet_sir@163.com 注:随意copy,不用告诉我 #coding:utf-8 import urllib imp ...

  6. Python:爬取乌云厂商列表,使用BeautifulSoup解析

    在SSS论坛看到有人写的Python爬取乌云厂商,想练一下手,就照着重新写了一遍 原帖:http://bbs.sssie.com/thread-965-1-1.html #coding:utf- im ...

  7. 使用python爬取MedSci上的期刊信息

    使用python爬取medsci上的期刊信息,通过设定条件,然后获取相应的期刊的的影响因子排名,期刊名称,英文全称和影响因子.主要过程如下: 首先,通过分析网站http://www.medsci.cn ...

  8. python爬取免费优质IP归属地查询接口

    python爬取免费优质IP归属地查询接口 具体不表,我今天要做的工作就是: 需要将数据库中大量ip查询出起归属地 刚开始感觉好简单啊,毕竟只需要从百度找个免费接口然后来个python脚本跑一晚上就o ...

  9. Python爬取豆瓣指定书籍的短评

    Python爬取豆瓣指定书籍的短评 #!/usr/bin/python # coding=utf-8 import re import sys import time import random im ...

随机推荐

  1. urllib基础-请求对象request

    简单的案例-爬取百度首页 from urllib import request ''' 爬取百度首页 ''' # 确定爬去目标 base_url = 'http://www.baidu.com' # ...

  2. Lucene原理与代码分析

    http://www.cnblogs.com/forfuture1978/category/300665.html

  3. javase(7)_Objcet类

    一.Object源代码 class Object { private static native void registerNatives(); static {registerNatives();} ...

  4. Spring入门Ioc、DI笔记

    Spring是为解决企业应用程序开发复杂性而创建的一个Java开源框架.以下是本人学习过程中总结的一些笔记: 如何学习Spring - 掌握用法 - 深入理解 - 反复总结 - 再次深入理解和实践 s ...

  5. atlas 日志分析脚本

    #!/usr/bin/env python # encoding: utf-8 #@author: 东哥加油! #@file: log_analyze.py #@time: 2018/8/23 17: ...

  6. (6)zabbix主机与组配置

    1. 创建主机方法 1.1 新建主机configuration(配置)->Hosts(主机)->Create host(创建主机) 见前面的博文 1.2 克隆/完全克隆主机 2. 主机参数 ...

  7. VC++中char和TCHAR之间转换

    char:计算机编程语言(c.c++.java等)中可容纳单个字符的一种基本数据类型. TCHAR:为了满足Unicode编码,对char的扩展,即_T(“str”)表示TCHAR类型 C++支持两种 ...

  8. linux下mysql常用的基本命令

    linux数据库环境搭建好之后,我们就可以创建数据库了.   一 查看版本 mysql --version 二 进入数据库 首先在根目录执行命令 mysql -u root -p   然后输入密码 进 ...

  9. 【css】报错,错误代码77,CURLE_SSL_CACERT_BADFILE (77)解决方法

    CURLE_SSL_CACERT_BADFILE (77) - 读取 SSL CA 证书时遇到问题(可能是路径错误或访问权限问题) 在微信接口相关开发时容易出现此问题 这一般是因为服务更新了相关的软件 ...

  10. windows终端输入pip install requests报错:Fatal error in launcher

    emm今天群友发了个图,说他的pip报错,是这个问题 emmm这个问题我也不太懂,后来让他pip install requests这样操作,, 还是不管用,我寻思这个错咋回事,让他用  python  ...