python (1)一个简单的爬虫: python 在windows下 创建文件夹并写入文件
1.一个简单的爬虫:爬取豆瓣的热门电影的信息
写在前面:如何创建本来存在的文件夹并写入
t_path = "d:/py/inn" #本来不存在inn,先定义路径,然后如果不存在,则创建目录,下面就能用了
if not os.path.exists(t_path):
os.makedirs(t_path)
f = open(r'd:/py/inn/info.txt','a')
技能:获取网页源码,正则表达式,函数调用,全局变量的定义
#! /usr/bin/env python
# -*- coding=utf-8 -*-
import requests
import json
import re
import sys
reload(sys)
sys.setdefaultencoding("utf-8")
classinfo = []
f = open('info.txt','w') num = 0
def write(htm):
titl = re.findall('data-tit(.*?)data-enough',htm.text,re.S)
for each in titl:
#print each
info = {}
#print each
info['title'] = re.search('le="(.*?)"',each,re.S).group(1)
info['year'] = re.search('data-release="(.*?)" data',each,re.S).group(1)
info['Rating']= re.findall('data-rate="(.*?)" data-star',each,re.S)[0]
info['time'] = re.findall('data-duration="(.*?)" data-re',each,re.S)[0]
info['reg'] = re.findall('data-region="(.*?)" data-dir',each,re.S)[0]
info['act'] = re.findall('data-actors="(.*?)" data-in',each,re.S)[0]
global num #全局的定义
num = num + 1
f.writelines('%d\n' %num)
f.writelines(u'电影名:'+info['title'] + '\n')
f.writelines(u'主演:'+info['act'] + '\n')
f.writelines(u'电影地区:' + info['reg']+'\n')
f.writelines(u'上映年份:' + info['year']+'\n')
f.writelines(u'电影时长:' + info['time']+'\n')
f.writelines(u'评分:' + info['Rating']+'\n\n')
def getremen():
# html = requests.get('http://movie.douban.com/')
url = 'http://movie.douban.com/'
html = requests.get(url)
html.encoding = 'utf-8'
# print html.text
write(html)
if __name__ == "__main__":
getremen()
python (1)一个简单的爬虫: python 在windows下 创建文件夹并写入文件的更多相关文章
- Python写一个简单的爬虫
code #!/usr/bin/env python # -*- coding: utf-8 -*- import requests from lxml import etree class Main ...
- 一个简单的多线程Python爬虫(一)
一个简单的多线程Python爬虫 最近想要抓取拉勾网的数据,最开始是使用Scrapy的,但是遇到了下面两个问题: 前端页面是用JS模板引擎生成的 接口主要是用POST提交参数的 目前不会处理使用JS模 ...
- python爬虫系列(1)——一个简单的爬虫实例
本文主要实现一个简单的爬虫,目的是从一个百度贴吧页面下载图片. 1. 概述 本文主要实现一个简单的爬虫,目的是从一个百度贴吧页面下载图片.下载图片的步骤如下: 获取网页html文本内容:分析html中 ...
- Python并发编程-一个简单的爬虫
一个简单的爬虫 #网页状态码 #200 正常 #404 网页找不到 #502 504 import requests from multiprocessing import Pool def get( ...
- 使用python做最简单的爬虫
使用python做最简单的爬虫 --之心 #第一种方法import urllib2 #将urllib2库引用进来response=urllib2.urlopen("http://www.ba ...
- 用Python写一个简单的Web框架
一.概述 二.从demo_app开始 三.WSGI中的application 四.区分URL 五.重构 1.正则匹配URL 2.DRY 3.抽象出框架 六.参考 一.概述 在Python中,WSGI( ...
- 用Python编写一个简单的Http Server
用Python编写一个简单的Http Server Python内置了支持HTTP协议的模块,我们可以用来开发单机版功能较少的Web服务器.Python支持该功能的实现模块是BaseFTTPServe ...
- python中一个简单的webserver
python中一个简单的webserver 2013-02-24 15:37:49 分类: Python/Ruby 支持多线程的webserver 1 2 3 4 5 6 7 8 9 10 11 ...
- Python实现一个简单三层神经网络的搭建并测试
python实现一个简单三层神经网络的搭建(有代码) 废话不多说了,直接步入正题,一个完整的神经网络一般由三层构成:输入层,隐藏层(可以有多层)和输出层.本文所构建的神经网络隐藏层只有一层.一个神经网 ...
随机推荐
- JAVA常用系统函数
1.System.out.println("显示信息"); // 显示内容,并自动换行 2.Syetem.out.print("显示信息"); // 显示内容, ...
- HDU-4035 Maze (概率DP求期望)
题目大意:在一个树形迷宫中,以房间为节点.有n间房间,每间房间存在陷阱的概率为ki,存在出口的概率为ei,如果这两种情况都不存在(概率为pi),那么只能做出选择走向下一个房间(包括可能会走向上一个房间 ...
- 《灰帽Python-黑客和逆向工程师的Python编程》学习记录
ctypes是Python语言的一个外部库,提供和C语言兼容的数据类型,可以很方便的调用C DLL中的函数. 操作环境:CentOS6.5 Python版本:2.66 ctypes是强大的,强大到本书 ...
- C/C++笔试题(很多)
微软亚洲技术中心的面试题!!! .进程和线程的差别. 线程是指进程内的一个执行单元,也是进程内的可调度实体. 与进程的区别: (1)调度:线程作为调度和分配的基本单位,进程作为拥有资源的基本单位 (2 ...
- Ubuntu 14.04 关于 TensorFlow 环境的配置
Ubuntu 14.04 关于 TensorFlow 环境的配置 本教程截图于 TensorFlow 官方文档中文版 https://github.com/jikexueyuanwiki/ten ...
- 简单实用的Android ORM框架TigerDB
TigerDB是一个简单的Android ORM框架,它能让你一句话实现数据库的增删改查,同时支持实体对象的持久化和自动映射,同时你也不必关心表结构的变化,因为它会自动检测新增字段来更新你的表结构. ...
- mfs-管理员
http://www.moosefs.org/http://moosefs.com/download.html 两个手册于2015/03/05阅完 moosefs-installation moose ...
- Redis分布式部署,一致性hash
一致性哈希 由于hash算法结果一般为unsigned int型,因此对于hash函数的结果应该均匀分布在[0,2^32-1]区间,如果我们把一个圆环用2^32 个点来进行均匀切割,首先按照hash( ...
- caller 属性和callee属性
1.caller 属性 返回一个对函数的引用,即调用了当前函数的函数体. functionName.caller :functionName 对象是所执行函数的名称. 说明: 对于函数来说,calle ...
- js页面取值的三种方式
<input id=""<radio <checkbox<div<img对于这些标签内参数取值,一般分为三种类型:一.有关id取值用 #:取id处的v ...