wxlw55555 2023-04-11 14:19 采纳率: 0%
浏览 17

谁教我这个爬虫怎怎么了

想爬取该电影网页的电影名称,但为什么啥也不显示?
求各位指点

img


#测试
from urllib import request
from bs4 import BeautifulSoup
head={}
head['User-Agent']='Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:109.0) Gecko/20100101 Firefox/111.0'
req=request.Request('https://movie.douban.com/explore',headers=head)
response=request.urlopen(req)
html=response.read()
html=html.decode('utf-8')
soup=BeautifulSoup(html,'html.parser')
#print(soup.prettify())
object=soup.select('div.drc-subject-info-title')
for movie in object:
    name=movie.find('span').text
    print(name) 

img

  • 写回答

3条回答 默认 最新

  • 「已注销」 2023-04-11 14:42
    关注

    以下内容部分参考ChatGPT模型:


    首先,你需要先获取该电影网页的源代码,可以使用urllib库中的request模块来实现。接着,你需要使用BeautifulSoup库来解析该网页的源代码,并通过查找特定的HTML元素来获取电影名称。

    下面是一个简单的爬虫示例代码,可以帮助你开始学习爬虫:

    from urllib import request
    from bs4 import BeautifulSoup
    
    # 设置请求头,模拟浏览器请求
    headers = {'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/58.0.3029.110 Safari/537.3'}
    
    # 发送请求,获取电影网页的源代码
    url = 'http://www.xxx.com'
    req = request.Request(url, headers=headers)
    response = request.urlopen(req)
    html = response.read()
    
    # 解析网页源代码,获取电影名称
    soup = BeautifulSoup(html, 'html.parser')
    movies = soup.find_all('div', class_='movie') # 假设电影名称在class为'movie'的div元素中
    for movie in movies:
        name = movie.find('h2').text # 假设电影名称在h2元素中
        print(name)
    

    当然,这只是一个简单的示例代码,具体的实现还需要根据你要爬取的网页结构来进行调整。另外,注意在爬取网页时要尊重网站的规则,不要频繁请求同一个页面。


    如果我的建议对您有帮助、请点击采纳、祝您生活愉快

    评论

报告相同问题?

问题事件

  • 创建了问题 4月11日