爬虫项目实战1【新手入门必看,详细介绍】

项目一:爬取金山词霸翻译功能

1.找到网址:http://www.iciba.com/fy

2.推荐爬虫学习者使用谷歌浏览器,打开谷歌浏览器,进入开发者模式(右键,检查)

 

 接下来,进入完整代码:

import requests
headers = {
    'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 '
                  '(KHTML, like Gecko) Chrome/115.0.0.0 Safari/537.36'
}

url = 'https://ifanyi.iciba.com/index.php?c=trans&m=fy&client=6&auth_user=key_web_fanyi&sign=987c8c1b546264a3'
data = {
    'from': 'en',
    'to': 'zh',
    'q': 'ban'
}

response = requests.post(url, headers=headers, data=data)
# res = json.loads(response.content.decode('utf-8'))
# print(res)

print(response.json()['content']['out'])

对于本代码的一些关键:

1.为啥不直接使用input()替代ban,这样就可以得到任意一个翻译,而不是特定的了?

        这个在链接中,使用了特定的参数验证,也就是sign = 后面的值,这个值一般是通过算法得到唯一的值,用于身份验证,通常他们也就是对应着一个唯一的值,所以

2.在此,还有另外一种方法,就是我#后的语句,这个需要导入json库进行使用

3.最后输入,我加了content和out,这个要根据实际情况来确定,具体如何使用方法如下:

首先,这是个元组,根据需求(我们只选择翻译),我们选择content的内容,在content中选择输出翻译的out。接下来,我们进行还是进行一个翻译的,大家观察下不同之处,也便于大家更好的理解。

项目二:爬取百度翻译功能

1.老规矩都是换汤不换药,得到url和headers

2.我们可以在data中更改原有数据,现在更改成input('单词'),为啥在这里可以用了呢,往上翻,金山词霸在链接中植入了特定的参数验证,关于在深入一点,我们暂且就不探讨了

3.还有后面,我们先直接print(response,json()),查看一下

 

跟上面比较,你发现了不同之处了吗?上面content后面直接是一个元组,而我们现在的data后面先是一个列表,在嵌入一个元组,如果我们依旧是用上面的方法,那么肯定出现报错(可以自己尝试一下),此时,我们就要用到列表的知识了,我们先通过创建‘ fanyi ’将 li_fanyi 的元组提取出来

fanyi = li_fanyi[0]
# 我们知道下标为0的就是列表中的第一项,这样我们把列表中的第一项提取出来

 然后再使用元组提取的方法,直接fanyi['v'] 就可以了

import requests

url = 'https://fanyi.baidu.com/sug'

headers = {
    'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko)'
                  ' Chrome/115.0.0.0 Safari/537.36'
}


data = {
    'kw': input('单词')
}

response = requests.post(url, headers=headers, data=data)

li_fanyi = response.json()['data']
fanyi = li_fanyi[0]
print(fanyi['v'])

 

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Zhou Xuan_

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值