用python写一段网页爬虫代码 爬取电影
时间: 2023-12-17 11:19:04 浏览: 92
以下是一个简单的 Python 代码片段,可以爬取电影网站的电影信息:
```python
import requests
from bs4 import BeautifulSoup
url = 'https://www.imdb.com/chart/top'
response = requests.get(url)
soup = BeautifulSoup(response.text, 'html.parser')
movies = soup.select('td.titleColumn')
crew = [a.attrs.get('title') for a in soup.select('td.titleColumn a')]
ratings = [b.attrs.get('data-value') for b in soup.select('td.posterColumn span[name="ir"]')]
for i in range(0, len(movies)):
print(f"{i+1}. {movies[i].text.strip()} ({crew[i]}) - Rating: {ratings[i]}")
```
这个代码片段使用 requests 库发送 HTTP 请求并获取网页内容,然后使用 BeautifulSoup 库解析 HTML 代码。它从 IMDb 网站中获取了电影的标题、演职人员和评级,并将它们打印在控制台中。你可以根据需要进行修改和优化。
相关问题
用python写一段电影爬虫代码爬取影片 要求每段都带注释
好的,以下是一段基于Python的电影爬虫代码,注释已经加在代码中了,希望能帮到你!
```python
import requests
from bs4 import BeautifulSoup
# 爬取的网站地址
url = 'https://www.imdb.com/chart/top/'
# 发送get请求获取网页内容
response = requests.get(url)
# 解析网页内容
soup = BeautifulSoup(response.content, 'html.parser')
# 获取电影列表
movie_list = soup.select('.lister-list tr')
# 遍历电影列表,提取电影信息
for movie in movie_list:
# 获取电影排名
rank = movie.find('td', class_='titleColumn').get_text().strip().split('.')[0]
# 获取电影名称
title = movie.find('td', class_='titleColumn').find('a').get_text()
# 获取电影评分
rating = movie.find('td', class_='ratingColumn').get_text().strip()
# 输出电影信息
print(rank, title, rating)
```
这段代码会爬取IMDb电影排行榜的前250部电影,并输出每部电影的排名、名称和评分。你可以根据需要对代码进行修改,比如改变爬取的网站地址、提取其他的电影信息等。
写一段python爬虫代码爬取网页图片
以下是一个简单的Python爬虫代码,可以爬取指定网页的图片并将其保存到本地:
```python
import requests
from bs4 import BeautifulSoup
import os
url = 'https://example.com' # 指定要爬取的网页
res = requests.get(url)
soup = BeautifulSoup(res.text, 'html.parser')
# 查找所有图片标签
img_tags = soup.find_all('img')
# 遍历所有图片标签,下载图片并保存到本地
for img_tag in img_tags:
img_url = img_tag.get('src')
img_name = img_url.split('/')[-1] # 图片名称为url中最后一个斜杠后的字符串
img_path = os.path.join('./images', img_name) # 保存到当前目录下的images文件夹中
img_res = requests.get(img_url)
with open(img_path, 'wb') as f:
f.write(img_res.content)
print(f'Saved {img_name} successfully.')
```
请注意,此代码仅供参考,实际使用时需要根据具体情况进行修改和优化。同时,爬取网页内容可能涉及法律风险,请谨慎使用。
阅读全文