2017-05-27 79 views
1

我希望从中获取所有的IP代理地址: https://free-proxy-list.net/Python的硒页面源代码

我决定,这将是更快,如果我从源代码得到它。

但问题是,我看到的一切,当我点击CTRL +ü,但是当我使用“page_source”我看到只有少数的IP,而不是全部。

感谢您的帮助。对于DebanjanB我显示代码。我不必使用硒。

有代码:

import requests 
import lxml.html 
r = requests.get("https://free-proxy-list.net/") 
html = lxml.html.fromstring(r.content) 
ip_list = html.xpath("//tr/td[1]/text()") 
port_list = html.xpath("//tr/td[2]/text()") 
with open("E:\proxy_lista.csv",'w',newline='') as csvfile: 
spamwriter = csv.writer(csvfile, delimiter=' ',quotechar='|',       quoting=csv.QUOTE_MINIMAL) 
for i in range(0,len(ip_list)): 
spamwriter.writerow(ip_list[i].split()) 
csvfile.close() 

回答

0

这是因为只有20表行当前页面上显示。

如果你只需要刮那些IP数字,你可能需要使用的python-requests + lxml.html代替selenium

import requests 
import lxml.html 

r = requests.get("https://free-proxy-list.net/") 
html = lxml.html.fromstring(r.content) 
ip_list = html.xpath("//tr/td[1]/text()") 

如果是强制你使用selenium你应该创建一个空列表,需要append()值和click()“下一步”按钮。在while循环中执行此操作,直到启用“下一步”按钮