# 导入模块 import requests from bs4 import BeautifulSoup # 定义函数 def get_games(keyword): # 构造搜索url url = "http://www.4399.com/search/index.htm?q=" + keyword # 发送请求,获取响应内容 response = requests.get(url) content = response.text # 解析网页,找到游戏信息 soup = BeautifulSoup(content, "html.parser") games = soup.find_all("div", class_="game_list") # 创建一个空列表,用于存储游戏标题和链接 result = [] # 遍历每个游戏信息 for game in games: # 找到a标签,获取标题和链接 a_tag = game.find("a") title = a_tag["title"] link = a_tag["href"] # 添加到列表中 result.append((title, link)) # 返回列表 return result # 调用函数,传入关键词"火柴" games = get_games("火柴") # 打印结果 for game in games: print(game[0], game[1])
这段代码里的a_tag[]是用来表示一个a标签的属性或内容的一种写法。a标签是HTML中用来创建超链接的元素,它有一个href属性,指定了链接的目标地址。a标签还可以有其他的属性,比如title, class, id等,用来设置链接的样式或功能。a标签的内容是显示在网页上的文本或图片,用户可以点击它跳转到链接的目标地址。
例如,这个a标签:
```html
Bing
```
它有三个属性:href, title, class,分别是:
- href="https://www.bing.com",表示链接的目标地址是Bing搜索引擎的网站
- title="Bing Search Engine",表示当用户鼠标悬停在链接上时,会显示一个提示框,内容是"Bing Search Engine"
- class="link",表示这个链接属于一个叫做"link"的样式类,可以用CSS来设置这个类的样式
它的内容是:
- Bing,表示这个链接在网页上显示为"Bing"这个文本
那么,我们可以用a_tag[]这种写法来访问这个a标签的属性或内容,比如:
- a_tag["href"],表示访问这个a标签的href属性的值,结果是"https://www.bing.com"
- a_tag["title"],表示访问这个a标签的title属性的值,结果是"Bing Search Engine"
- a_tag["class"],表示访问这个a标签的class属性的值,结果是"link"
- a_tag.text,表示访问这个a标签的内容(文本),结果是"Bing"
结果你在pycharm上运行会发现出现爬取内容为空的问题,因为这个网址已经不复存在了呜呜呜,代表我的童年也一去不复返了