【酱浦菌-爬虫项目】爬取学术堂论文信息

  1. 首先,代码定义了一个名为

```

url

```

的变量,它是一个包含三个网址的集合(或者说是一个集合的字典)。这些网址分别是:

  1. 接下来,设置了一个HTTP请求的头部信息,模拟了一个Chrome浏览器的请求。

  2. 然后,通过`requests.get()`方法,分别发送GET请求到这三个URL,并将响应内容保存在`response`变量中。

  3. 由于网站的编码方式可能不同,这里使用了一些编码转换操作:

  • `response.text.encode('iso-8859-1').decode('gbk')`将响应内容从ISO-8859-1编码转换为GBK编码。
  1. 创建一个`parsel.Selector`对象,用于解析HTML内容。

  2. 从HTML中选择所有满足条件的元素:

  • 使用CSS选择器`'p spanstyle="font-family: 宋体"'`,找到所有带有`style`属性值为"font-family: 宋体"的`<span>`元素。

  • 使用XPath表达式`.//text()`,提取这些`<span>`元素内的文本内容。

  1. 遍历每个提取到的文本:
  • 打印文本内容,表示下载成功。

  • 将文本内容追加到名为'pc_biye.text'的文件中(以UTF-8编码保存)。

  1. 最后,完成了对这三个网址的文本下载操作。

完整代码如下:

python 复制代码
import requests
import parsel
import os 
url = {
    'http://www.xueshut.com/lwtimu/127966.html',
    'http://www.xueshut.com/lwtimu/127966_2.html',
    'http://www.xueshut.com/lwtimu/127966_3.html'   
}
headers = {
    'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/124.0.0.0 Safari/537.36'
}
for url in url:
    response = requests.get(url=url, headers=headers)
    response_decoded = response.text.encode('iso-8859-1').decode('gbk')
    selector = parsel.Selector(response_decoded)
    text = selector.css('p span[style="font-family: 宋体"]').xpath('.//text()').extract()
    for text in text:
        print(f'{text}下载成功')
        #print("\n")
        with open('pc_biye.text','a',encoding='utf-8') as f:
            f.write(text)

运行效果如下:

相关推荐
大数据魔法师2 小时前
curl_cffi从入门到实战
爬虫·python
2601_960102045 小时前
2026新破甲AI站群泛程序
爬虫·搜索引擎·蜘蛛池
深蓝电商API7 小时前
AI 如何辅助编写爬虫?
爬虫
狗都不学爬虫_7 小时前
AI逆向 - 天御无感点击验证(补+纯)
爬虫·python·网络爬虫
小静AI工程实验室8 小时前
Python 爬虫翻页为何重复、漏数据?SQLite 复现 OFFSET、复合游标与快照的 8 项检查
爬虫·python·sqlite
码农学院9 小时前
制造业B2B官网GEO实战:用 Python 向量相似度给老产品手册自动补语义内链,让 AI 爬虫抓得更深
运维·人工智能·爬虫·ai优化aio
电商API_1800790524710 小时前
电商平台数据分析实战_帖子
开发语言·爬虫·python·数据采集·京东
码农学院1 天前
企业官网改版GEO实战:把 Blazor SPA 改造成 AI 爬虫可读的预渲染方案
人工智能·爬虫·geo
张小凡vip2 天前
python--爬虫--经验积累的遇到的坑
开发语言·爬虫·python
刘广睿2 天前
批量截图与长图拼接:自动化工作流的三种实现方案对比
爬虫·自动化·效率工具·python3.11