爬取电影天堂全站电影

新博客:https://wywwzjj.top/

具体分析以后再补,静态页面也没啥好分析的。

import requests, re
from bs4 import BeautifulSoup
import xlsxwriter
import datetime
from lxml import etree

def get_URLs(URL, page):
    # URLs = []
    # html = get_html(start_url)
    # soup = BeautifulSoup(html, 'lxml')
    # urls = soup.find(id='menu')
    # pattern = re.compile(r'href="(.+)">')  # 匹配模式
    # res = re.findall(pattern, str(urls))
    # host = 'http://www.ygdy8.net/'
    # for u in res:
    #     if 'http' not in u:
    #         u = host + u
    #     URLs.append(u)
    # URLs.insert(10, URLs[-3])
    # del URLs[1]
    # url = URLs[:10]
    # html = get_html(url[0])
    # soup = BeautifulSoup(html, 'lxml')
    # page = soup.find(class_='x')
    domain = 'http://www.ygdy8.net'
    start_url = URL
    url = start_url + page + '.html'
    html = get_html(url)
    soup = BeautifulSoup(html, 'lxml')
    urls = soup.find_all(class_='ulink')
    # print(urls)
    pattern = re.compile(r'href="(.+?)">')  # 匹配模式
    res = re.findall(pattern, str(urls))
    #print(len(res))
    # print(res)
    for u in res:
        if 'index' in u:
            res.pop(res.index(u))
    # 每页落掉了两个
    urls = list(map(lambda u: domain+u, res))
    return urls

def get_html(url):
     try:
         headers = {
   
             "User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/56.0.2924.87 Safari/537.36",
             'ContentType': 
Python爬取电影天堂这类网站通常涉及到网络爬虫技术,特别是使用如requests、BeautifulSoup、Scrapy等库来获取网页内容。以下是一个简单的步骤概述: 1. **导入库**:首先安装必要的库,如`requests`用于发送HTTP请求,`beautifulsoup4`用于解析HTML。 ```python import requests from bs4 import BeautifulSoup ``` 2. **发送请求**:向电影天堂的URL发起GET请求,并保存响应内容。 ```python url = "http://www.example.com/movieheaven" # 替换为你想爬取电影天堂页面地址 response = requests.get(url) ``` 3. **解析内容**:使用BeautifulSoup解析HTML文档,找到包含电影信息的部分。 ```python soup = BeautifulSoup(response.text, 'html.parser') movies = soup.find_all('div', class_='movie') # 类名可能需要根据实际网站结构修改 ``` 4. **提取数据**:遍历解析后的节点,提取每部电影的标题、链接或其他相关信息。 ```python for movie in movies: title = movie.find('h2').text link = movie.find('a')['href'] print(f'Title: {title}, Link: {link}') ``` 5. **存储数据**:可以根据需求将数据存入CSV、数据库或JSON文件。 6. **处理反爬机制**:注意检查目标网站是否有robots.txt文件,遵守网站的爬取政策,设置合理的延迟以避免过于频繁的访问。 这只是一个基础示例,实际爬取可能需要处理JavaScript渲染的内容、登录验证、动态加载等复杂情况。同时,要注意尊重版权和法律法规,合理使用爬虫。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值