gpt4 book ai didi

Python 链接到文件迭代器不迭代

转载 作者:太空宇宙 更新时间:2023-11-04 03:52:29 24 4
gpt4 key购买 nike

这个问题让我困惑了几天,我相信我终于将它缩小到这个代码块。如果有人能告诉我如何解决这个问题,以及为什么会这样,那就太棒了。

import urllib2

GetLink = 'http://somesite.com/search?q=datadata#page'
holder = range(1,3)

for LinkIncrement in holder:
h = GetLink + str(LinkIncrement)
ReadLink = urllib2.urlopen(h)
f = open('test.txt', 'w')

for line in ReadLink:
f.write(line)

f.close()
main() #calls function main that does stuff with the file
continue

问题是它只会写入来自 'http://somesite.com/search?q=datadata#page' 的数据,如果我执行以下结果打印正确的话。

for LinkIncrement in holder:
h = GetLink + str(LinkIncrement)
print h

我正在复制的链接确实以这种方式增加,我可以通过复制和粘贴打开 url。此外,我已经尝试使用 while 循环进行此操作,但总是得到相同的结果。

下面的代码打开了 3 个带有递增 url 的选项卡 /search?q=datadata#page1/search?q=datadata#page2/搜索?q=datadata#page3。就是不能让它在我的代码中工作。

import webbrowser
import urllib2
h = ''
def tab(passed):
url = passed
webbrowser.open_new_tab(url + '/')

def test():

g = 'http://somesite.com/search?q=datadata#page'
f = urllib2.urlopen(g)
NewVar = 1
PageCount = 1

while PageCount < 4:

h = g + str(NewVar)
PageCount += 1
NewVar += 1
tab(h)
test()

感谢 Falsetru 帮助我解决了这个问题。该网站在第一页之后的所有页面都使用 json。

最佳答案

在url中,#之后的部分(fragment identifier)没有传递给web服务器;服务器响应相同的内容,因为框架标识符之前的部分相同。

#something 由浏览器 (javascript) 处理。您需要看看 javascript 中发生了什么。

关于Python 链接到文件迭代器不迭代,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20568743/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com