我一直在使用下面的代码来解析链接中的网页https://www.blogforacure.com/members.php.代码将返回给定页面的所有成员的链接。
from bs4 import BeautifulSoup
import urllib
r = urllib.urlopen('https://www.blogforacure.com/members.php').read()
soup = BeautifulSoup(r,'lxml')
headers = soup.find_all('h3')
print(len(headers))
for header in headers:
a = header.find('a')
print(a.attrs['href'])
但是我只得到上面页面的前10个链接。即使在打印美化选项时,我也只能看到前10个链接。
通过向https://www.blogforacure.com/site/ajax/scrollergetentries.php
endpoint。
在你的代码中使用请求
来模拟它们,维护一个web抓取会话:
from bs4 import BeautifulSoup
import requests
url = "https://www.blogforacure.com/site/ajax/scrollergetentries.php"
with requests.Session() as session:
session.headers = {'User-Agent': 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_11_4) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/51.0.2704.103 Safari/537.36'}
session.get("https://www.blogforacure.com/members.php")
page = 0
members = []
while True:
# get page
response = session.post(url, data={
"p": str(page),
"id": "#scrollbox1"
})
html = response.json()['html']
# parse html
soup = BeautifulSoup(html, "html.parser")
page_members = [member.get_text() for member in soup.select(".memberentry h3 a")]
print(page, page_members)
members.extend(page_members)
page += 1
它将当前页码和每页的成员列表累加到成员
列表中。不发布打印内容,因为它包含名称。
请注意,我故意让循环没完没了,请找出退出条件。可能是当response.json()
抛出错误时。
我试图刮此页上Flipkart: http://www.flipkart.com/moto-x-play/p/itmeajtqp9sfxgsk?pid=MOBEAJTQRH4CCRYM 我试图找到的div类"fk-ui-ccarousel超级容器相同的vreco部分reco-carousel-边界-顶部sameHorizontalReco",但它返回空结果。 divs是空的。我使用inspect元
我使用beautifulsoup查找网页上的页数,但在编写代码时: 它给出了以下错误: 回溯(最近一次调用):文件“C:/Users/HangaarLab/Desktop/sonartik/sonartik.py”,第13行,在soup=BeautifulSoup(response.text)TypeError中:“模块”对象不可调用 在另一台计算机中,代码运行,但它给出了以下警告: UserWa
我已经获得了刮取第一页的代码,但是url从: https://www.expansion.com/empresas-de/ganaderia/granjas-en-general/index.html -- 如何创建从第2页到第65页的循环?非常感谢!
我有一小段代码来从web站点中提取表数据,然后以csv格式显示。问题是for循环多次打印记录。我不确定是不是因为 标签。顺便说一句,我是Python新手。谢谢你的帮助!
问题内容: 我正在尝试在Python 2.7中安装BeautifulSoup 。我不断收到错误消息,无法理解原因。 我按照说明安装了pip,该pip已安装到以下目录:,然后尝试将其添加到路径中并运行命令。 尝试了两种不同的方法: 都给我这个错误信息: 该外壳突出显示“安装”一词,并说这是无效的语法。 我不知道发生了什么,所以任何帮助将不胜感激。 问题答案: 是 命令行工具 ,而不是Python语法
我有一个带有div标签的页面源,如下面的示例页面源。我想像下面的例子一样刮掉所有的网址,并将它们保存在列表中。 示例url: 来自: 我尝试使用下面的代码从href中刮取网址。我试图使用span类来过滤只包含作业卡search__easy飞机的div标签。代码不返回任何网址,只是一个空列表。我对美丽的汤和硒不熟悉。如果有人能指出我的问题是什么,并提出一个解决方案,我会很高兴。特别是如果你也能给出一