简单爬取——爬取电影列表页

简介: 简单的爬取

基础配置

导入相关包并设置爬取的路径和基本信息
import multiprocessing

import requests
import logging
import re
from urllib.parse import urljoin
logging.basicConfig(level=logging.INFO,format="%(asctime)s-%(levelname)s:%(message)s")
BASE_URL="https://ssr1.scrape.center"
TOTAL_PAGE=10

爬取源代码方法

def scrape_page(url):

logging.info("scraping %s...",url)
try:
    response=requests.get(url)
    if response.status_code==200:
        return response.text
    logging.error("get invalid status code %s while scraping %s",response.status_code,url)
except requests.RequestException:
    logging.error("error occurred while scraping %s",url,exc_info=True)

解析:传入一个路径参数,根据参数进行请求,返回html文件的源码。

定义列表页的爬取方法

def scrape_index(page):

index_url=f'{BASE_URL}/page/{page}'
return scrape_page(index_url)

根据网站可以观察出网站的分页是基本路径+page+页码数,这样就可以获取到所有的路径。

解析列表页的方法

def parse_index(html):

pattern=re.compile('<a.*?href="(.*?)".*?class="name">')
items=re.findall(pattern,html)
if not items:
    return []
for item in items:
    detail_url=urljoin(BASE_URL,item)
    logging.info('get detail url %s',detail_url)
    yield detail_url

接受一个html代码,然后定义一个提取标题超链接的正则表达式,我们使用.?来进行非贪婪通用匹配任意字符,在href属性的引号之间使用了分组匹配(.?)正则表达式,这样我们可以在href中获取href中的值,再调用 re库中的findall方法,传入构造的pattern对象,第二个参数传入html,这样便会得到匹配的结果,并赋值为items,如果item为空。这样我们可以得到详情页的url

相关文章
|
11天前
|
数据采集 前端开发 JavaScript
除了网页标题,还能用爬虫抓取哪些信息?
爬虫技术可以抓取网页上的各种信息,包括文本、图片、视频、链接、结构化数据、用户信息、价格和库存、导航菜单、CSS和JavaScript、元数据、社交媒体信息、地图和位置信息、广告信息、日历和事件信息、评论和评分、API数据等。通过Python和BeautifulSoup等工具,可以轻松实现数据抓取。但在使用爬虫时,需遵守相关法律法规,尊重网站的版权和隐私政策,合理控制请求频率,确保数据的合法性和有效性。
|
5月前
|
数据采集 存储 JavaScript
(2024)豆瓣电影详情内容爬虫详解和源码
这是一个Python爬虫程序,用于抓取豆瓣电影详情页面如`https://movie.douban.com/subject/1291560/`的数据。它首先发送GET请求,使用PyQuery解析DOM,然后根据`&lt;br&gt;`标签分割HTML内容,提取电影信息如导演、演员、类型等,并将中文键转换为英文键存储在字典中。完整代码包括请求、解析、数据处理和测试部分。当运行时,会打印出电影详情,如导演、演员列表、类型、时长等。
105 1
 (2024)豆瓣电影详情内容爬虫详解和源码
|
6月前
爬取电影数据
爬取电影数据
61 0
|
数据采集 XML 存储
构建一个简单的电影信息爬虫项目:使用Scrapy从豆瓣电影网站爬取数据
这个案例展示了如何使用 Scrapy 框架构建一个简单的爬虫项目,从网页中提取数据并保存到文件中。通过配置、编写爬虫代码、定义数据模型和数据处理管道,你可以灵活地构建各种爬虫应用。
314 0
构建一个简单的电影信息爬虫项目:使用Scrapy从豆瓣电影网站爬取数据
|
存储 数据采集 关系型数据库
python爬虫爬取房源信息
写这篇博客的原因是在我爬取房产这类数据信息的时候,发现csdn中好多博主写的关于此类的文章代码已经不适用,因为好多房产网站代码已经更改,使用老的代码明显爬取不到所需要的房产信息。......
245 1
python爬虫爬取房源信息
|
数据采集
【详细步骤解析】爬虫小练习——爬取豆瓣Top250电影,最后以csv文件保存,附源码
【详细步骤解析】爬虫小练习——爬取豆瓣Top250电影,最后以csv文件保存,附源码
313 0
|
存储 数据采集
爬虫实例——爬取豆瓣网 top250 电影的信息
本节通过一个具体的实例来看下编写爬虫的具体过程。以爬取豆瓣网 top250 电影的信息为例,top250 电影的网址为:https://movie.douban.com/top250。在浏览器的地址栏里输入 https://movie.douban.com/top250,我们会看到如下内容:
255 0
|
人工智能 算法 搜索推荐
记一次爬取搜索引擎缩略图并保存到本地
✨✨欢迎订阅本专栏或者关注我,大家一起努力每天一题算法题✨✨❤️❤️❤️最后,希望我的这篇文章能对你的有所帮助!愿自己还有你在未来的日子,保持学习,保持进步,保持热爱,奔赴山海!❤️❤️❤️。.........
154 0
记一次爬取搜索引擎缩略图并保存到本地
下一篇
无影云桌面