鱼C论坛

 找回密码
 立即注册
查看: 1387|回复: 3

正则提取很基础的问题

[复制链接]
发表于 2021-11-10 22:07:00 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
如题 关键在find_all那边那里,添加 style='font-size: 24px;'后返回的就是空列表,不添加这段文字返回的就是需要的文段,可是html源代码也是有这个的啊,我复制粘贴的。
还有一个就是不知道为什么我idle运行出来的结果返回的是一行的,不像看视频里面多行的。
望大佬解答



import requests
from bs4 import BeautifulSoup
import re
html = 'https://www.bbiquge.net/book_104535/53673443.html'
req = requests.get(html)
req = req.text
soup = BeautifulSoup(req,'html.parser')
texts = soup.find_all('div',id = 'content', style='font-size: 24px;')
print(texts)

想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2021-11-10 23:07:17 | 显示全部楼层
浏览器的码源是经过浏览器经过css和js渲染过的,而爬虫的是没有渲染过的,不一样很正常。
我看了一下,爬虫拿到的是没有的。 屏幕截图 2021-11-10 230254.jpg
你可以用下面的代码看看。
html = 'https://www.bbiquge.net/book_104535/53673443.html'
headers = {'user-agent': 'Mozilla'}
r = requests.get(html, headers=headers)
with open('r.txt', 'w', encoding='utf-8') as f:
    f.write(r.text)
至于视频里的是多行,需要你贴一下你看的视频里的代码。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2021-11-11 10:30:26 | 显示全部楼层
suchocolate 发表于 2021-11-10 23:07
浏览器的码源是经过浏览器经过css和js渲染过的,而爬虫的是没有渲染过的,不一样很正常。
我看了一下,爬 ...

好的谢谢 还有个正则表达的问题 texts = soup.find_all('div',id = 'content', style='font-size: 24px;') 这段代码查找不到所需要的列表,而texts = soup.find_all('div',id = 'content)却能找到
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2021-11-11 10:43:52 | 显示全部楼层
1835575828 发表于 2021-11-11 10:30
好的谢谢 还有个正则表达的问题 texts = soup.find_all('div',id = 'content', style='font-size: 24px;' ...

看图,get到的码源里没有style,style是浏览器渲染的。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-6-27 22:17

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表