写一个python爬虫程序,爬取网页https://pinyin.thunisoft.com/index.html#/sy中类名为fd的数据
时间: 2024-10-23 21:05:41 浏览: 18
Python爬虫通常使用requests库获取网页内容,然后BeautifulSoup库解析HTML结构。以下是一个基本的Python爬虫示例,用于从指定URL抓取`class`为"fd"的数据:
```python
import requests
from bs4 import BeautifulSoup
# 请求目标网页
url = "https://pinyin.thunisoft.com/index.html#/sy"
response = requests.get(url)
# 检查请求是否成功
if response.status_code == 200:
# 解析网页内容
soup = BeautifulSoup(response.text, 'html.parser')
# 查找所有class为"fd"的元素
fd_data = soup.find_all(class_='fd')
for item in fd_data:
# 提取数据,这取决于fd元素的具体结构,这里假设它们是text属性
data = item.text.strip()
print(data) # 打印提取到的数据
else:
print(f"请求失败,状态码:{response.status_code}")
相关问题
爬取网站https://pinyin.thunisoft.com/index.html#/sy中<p class="fd-sy-td-content-title"></p>标签中的文本内容
爬取网站https://pinyin.thunisoft.com/index.html#/sy 中 `<p class="fd-td-content-title">` 标签内的文本内容,通常涉及到网络请求、HTML解析和数据抽取。如果你使用 Python 和相关的库,可以采取以下步骤:
首先,你需要使用 `requests` 库发起GET请求获取网页源码:
```python
import requests
url = "https://pinyin.thunisoft.com/index.html#/sy"
response = requests.get(url)
```
然后,你可以使用 `BeautifulSoup` 来解析 HTML 并找到目标段落:
```python
from bs4 import BeautifulSoup
soup = BeautifulSoup(response.text, 'lxml')
target_paragraph = soup.find('p', {'class': 'fd-sy-td-content-title'})
content = target_paragraph.text if target_paragraph else None
```
`target_paragraph.text` 将获取到该标签的文本内容,如果没找到则返回 `None`。
请注意,在实际操作中,网站可能会有反爬机制或版权保护措施,因此在爬取数据时需要遵守相关法律法规,并尊重网站的Robots协议。
oninput(e){ var that=this that.data.identity=e.detail.value wx.request({ url: app.globalData.api +'/Student_GetInfoByIdCard', data:{ token:app.globalData.token, identity:that.data.identity }, method: 'POST', header: { 'content-type': 'application/json' }, success(res){ var r = JSON.parse(res.data.d) // console.log(r.JsonStr.data1) var data=r.JsonStr.data1 console.log(data) if(that.data.identity.length===18){ that.setData({ nation: data.nation, //民族 teacherphone: data.teacherphone, //指导老师手机号 teacher: data.teacher,//指导老师 name: data.name,//姓名 phone: data.phone,//手机号 gender:data.gender,//性别 nationality:data.nationality,//国籍 birthday:data.birthday_shorter,//生日 pinyinlist:data.pinyin//拼音 }) } } }) // console.log(e.detail.value) },如果身份证号长度不满18 所有信息都不显示代码
如果您想让所有信息都不管身份证号码长度的情况下都能够显示,可以将代码中的 `if(that.data.identity.length===18)` 这行代码修改为 `if(data !== null)`,这样无论身份证号码长度是多少,只要返回的 `data` 不为空,就会更新页面显示。
修改后的代码如下:
```
oninput(e) {
var that = this;
that.data.identity = e.detail.value;
wx.request({
url: app.globalData.api + '/Student_GetInfoByIdCard',
data: {
token: app.globalData.token,
identity: that.data.identity
},
method: 'POST',
header: {
'content-type': 'application/json'
},
success(res) {
var r = JSON.parse(res.data.d);
var data = r.JsonStr.data1;
console.log(data);
if (data !== null) {
that.setData({
nation: data.nation, //民族
teacherphone: data.teacherphone, //指导老师手机号
teacher: data.teacher, //指导老师
name: data.name, //姓名
phone: data.phone, //手机号
gender: data.gender, //性别
nationality: data.nationality, //国籍
birthday: data.birthday_shorter, //生日
pinyinlist: data.pinyin //拼音
});
}
}
});
}
```
阅读全文