Python 网络爬虫练习题及答案
网络爬虫是一种自动化程序,用于从互联网上抓取数据。Python 作为一种简洁而强大的编程语言,被广泛应用于网络爬虫开发。本文将介绍几个 Python 网络爬虫的练习题,并提供相应的答案。
1. 练习题:抓取网页标题
编写一个 Python 程序,实现如下功能:
- 输入一个网页的 URL;
- 程序自动抓取该网页的标题内容,并将其打印出来。
答案:
```python
import requests
from bs4 import BeautifulSoup
def get_page_title(url):
    try:
        response = (url)
        soup = t, 'html.parser')
        title = soup.title.string
        print("网页标题:", title)
    except:
        print("无法访问该网页或获取标题失败")
url = input("请输入要抓取的网页 URL:")
get_page_title(url)
```
2. 练习题:抓取网页图片
编写一个 Python 程序,实现如下功能:
- 输入一个网页的 URL;
- 程序自动抓取该网页中的所有图片,并将其保存到本地。
答案:
```python
import requests
from bs4 import BeautifulSoup
import os
def download_images(url):
    try:
        response = (url)
        soup = t, 'html.parser')
python爬虫开发        img_tags = soup.find_all('img')
        for i, img_tag in enumerate(img_tags):
            img_url = img_tag['src']
            response = (img_url)
            if response.status_code == 200:
                with open(f'img_{i}.jpg', 'wb') as f:
                    f.t)
    except:
        print("无法访问该网页或获取图片失败")
url = input("请输入要抓取的网页 URL:")
download_images(url)
```
3. 练习题:抓取网页新闻
编写一个 Python 程序,实现如下功能:
- 输入一个新闻网站的 URL;
- 程序自动抓取该网站的新闻标题和摘要,并将其打印出来。
答案:
```python
import requests
from bs4 import BeautifulSoup
def get_news(url):
    try:
        response = (url)
        soup = t, 'html.parser')
        news_list = soup.find_all('a', {'class': 'news-item'})
        for news in news_list:
            title = news.find('h2').text.strip()
            summary = news.find('p').text.strip()
            print("新闻标题:", title)
            print("新闻摘要:", summary)
            print()
    except:
        print("无法访问该网页或获取新闻失败")
url = input("请输入要抓取的新闻网站 URL:")
get_news(url)
```
以上是几道常见的 Python 网络爬虫练习题以及对应的答案。通过实践这些练习,您可以熟悉 Python 网络爬虫的基本原理和常用工具,提升自己在网络数据获取方面的能力。当然,在实际应用中还需注意合法合规,遵守相关的法律和网站的使用协议。祝您学习进步!