Python 2.7_First_try_爬取阳光电影网_20161206

之前看过用Scrapy 框架建立项目爬取 网页解析时候用的Xpath进行解析的网页元素 这次尝试用select方法匹配元素

1、入口爬取页面 http://www.ygdy8.com/index.html

2、用到模块  requests(网页源码下载) BeautifulSoup4(网页解析)

3、思路:首先由入口爬取页面进行获取网页上方栏目及对应url 如下图

4、建立菜单url列表 for 循环再次进行解析 爬取每个一级菜单下的具体电影title 和url

5、问题:每个菜单下的url 进行再次解析后 由于网站内容不同 select 元素会出现非电影标题的连接和标题  

6、下一步处理:考虑建类和函数 运用递归循环获取url 并解析

  ①电影的url 再次进行解析 获取电影下载连接 并写入本地文件

  ②将5步骤中出现的非电影标题进行判断 删除

7、python 代码

#coding:utf-8
import requests
from bs4 import BeautifulSoup as bs

#爬取入口
rooturl="http://www.ygdy8.com/index.html"
#获取网页源码
res=requests.get(rooturl)
#网站编码gb2312
res.encoding=‘gb2312‘
#网页源码
html=res.text
soup=bs(html,‘html.parser‘)
cate_urls = []
for cateurl in soup.select(‘.contain ul li a‘):
    #网站分类标题
    cate_name=cateurl.text
    #分类url 进行再次爬取
    cate_url="http://www.ygdy8.com/"+ cateurl[‘href‘]
    cate_urls.append(cate_url)
    print "网站一级菜单:",cate_name,"菜单网址:",cate_url
#每个菜单url 解析
for i in range(len(cate_urls)):
    cate_listurl=cate_urls[i]
    res = requests.get(cate_listurl)
    res.encoding = ‘gb2312‘
    html = res.text
    soup = bs(html, ‘html.parser‘)
    print "正在解析第"+str(i+1)+"个链接",cate_urls[i]
    contenturls=[]
    contents=soup.select(‘.co_content8 ul‘)[0].select(‘a‘)
    #print contents
    for title in contents:
        moivetitle=title.text
        moiveurl=title[‘href‘]
        contenturls.append(moiveurl)
        print moivetitle,moiveurl
print contenturls

8、运行结果

 

时间: 2024-12-21 21:58:37

Python 2.7_First_try_爬取阳光电影网_20161206的相关文章

Python 2.7_Second_try_爬取阳光电影网_获取电影下载地址并写入文件 20161207

1.昨天文章http://www.cnblogs.com/Mr-Cxy/p/6139705.html 是获取电影网站主菜单 然后获取每个菜单下的电影url  2.今天是对电影url 进行再次解析获取下载地址 并写入文件  调用函数和类多线程还没实现 一步步来吧 3.问题:我想实现的是先对菜单进行创建文件目录 然后每个目录下以获取的电影名称.txt 作为文件 文件内是下载连接,但是创建一级菜单文件夹没问题 用OS模块就可以创建 在写入电影名称.txt时候出问题 报错 我以为是编码问题 f.open

利用Scrapy爬取1905电影网

本文将从以下几个方面讲解Scrapy爬虫的基本操作 Scrapy爬虫介绍 Scrapy安装 Scrapy实例--爬取1905电影网 相关资料 Scrapy 爬虫介绍 Scrapy是Python开发的一个快速,高层次的屏幕抓取和web抓取框架,用于抓取web站点并从页面中提取结构化的数据.Scrapy用途广泛,可以用于数据挖掘.监测和自动化测试. Scrapy吸引人的地方在于它是一个框架,任何人都可以根据需求方便的修改.它也提供了多种类型爬虫的基类,如BaseSpider.sitemap爬虫等,最

Python爬虫入门 | 爬取豆瓣电影信息

这是一个适用于小白的Python爬虫免费教学课程,只有7节,让零基础的你初步了解爬虫,跟着课程内容能自己爬取资源.看着文章,打开电脑动手实践,平均45分钟就能学完一节,如果你愿意,今天内你就可以迈入爬虫的大门啦~好啦,正式开始我们的第二节课<爬取豆瓣电影信息>吧!啦啦哩啦啦,都看黑板~1. 爬虫原理1.1 爬虫基本原理听了那么多的爬虫,到底什么是爬虫?爬虫又是如何工作的呢?我们先从"爬虫原理"说起.爬虫又称为网页蜘蛛,是一种程序或脚本.但重点在于:它能够按照一定的规则,自动

【Python3 爬虫】U09_爬取hao6v电影网

目录 1.需求描述 2.实现代码 1.需求描述 爬取hao6v电影网的数据,先通过xpath解析第一个页面,获取到每部电影的url详情页地址,然后解析详情页地址,获取出所需的数据 页面如下: 2.实现代码 # Author:Logan import requests from lxml import etree HEADERS = { 'User-Agent':'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML

Python爬虫之爬取煎蛋网妹子图

这篇文章通过简单的Python爬虫(未使用框架,仅供娱乐)获取并下载煎蛋网妹子图指定页面或全部图片,并将图片下载到磁盘. 首先导入模块:urllib.request.re.os import urllib.request import re import os urllib.request模块用于获取HTML页面数据 re模块用于通过正则表达式解析并截取HTML页面图片url os模块用于文件夹相关操作 代码不多,直接贴出来,代码解释在注释中: def crawl_jiandan(page, p

python爬虫:爬取易迅网价格信息,并写入Mysql数据库

本程序涉及以下方面知识: 1.python链接mysql数据库:http://www.cnblogs.com/miranda-tang/p/5523431.html   2.爬取中文网站以及各种乱码处理:http://www.cnblogs.com/miranda-tang/p/5566358.html   3.BeautifulSoup使用 4.原网页数据信息不全用字典的方式,把不存在的字段设置为空 详细代码: #!/usr/bin/python # -*- encoding:utf-8 -*

零基础Python爬虫实现(爬取最新电影排行)

提示:本学习来自Ehco前辈的文章, 经过实现得出的笔记. 目标网站 http://dianying.2345.com/top/ 网站结构 要爬的部分,在ul标签下(包括li标签), 大致来说迭代li标签的内容输出即可. 遇到的问题? 代码简单, 但遇到的问题很多. 一: 编码 这里统一使用gbk了. 二: 库 过程中缺少requests,bs4,idna,certifi,chardet,urllib3等库, 需要手动添加库, 我说一下我的方法 库的添加方法: 例如:urllib3 百度urll

团队-张宸-需求分析-python爬虫分类爬取豆瓣电影

首先要明白爬网页实际上就是:找到包含我们需要的信息的网址(URL)列表通过 HTTP 协议把页面下载回来从页面的 HTML 中解析出需要的信息找到更多这个的 URL,回到 2 继续其次还要明白:一个好的列表应该:包含足够多的电影的 URL通过翻页,可以遍历到所有的电影一个按照更新时间排序的列表,可以更快抓到最新更新的电影最后模拟过程知道豆瓣网站不能一次性爬取所有信息,只能分类爬取使用工具pyspider分析完成实现代码,测试模拟运行,按照时间列表爬取每类最新电影资讯团队成员:张文然,张宸

团队-张文然-需求分析-python爬虫分类爬取豆瓣电影信息

首先要明白爬网页实际上就是:找到包含我们需要的信息的网址(URL)列表通过 HTTP 协议把页面下载回来从页面的 HTML 中解析出需要的信息找到更多这个的 URL,回到 2 继续其次还要明白:一个好的列表应该:包含足够多的电影的 URL通过翻页,可以遍历到所有的电影一个按照更新时间排序的列表,可以更快抓到最新更新的电影最后模拟过程知道豆瓣网站不能一次性爬取所有信息,只能分类爬取使用工具pyspider分析完成实现代码,测试模拟运行,按照时间列表爬取每类最新电影资讯 代码分解,便于加入团队后组员