<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>扫描器 &#8211; from0to1</title>
	<atom:link href="https://www.from0to1.top/tag/%E6%89%AB%E6%8F%8F%E5%99%A8/feed" rel="self" type="application/rss+xml" />
	<link>https://www.from0to1.top</link>
	<description>一个研究技术、分享经验的博客</description>
	<lastBuildDate>Sun, 01 Oct 2023 16:49:30 +0000</lastBuildDate>
	<language>zh-Hans</language>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	<generator>https://wordpress.org/?v=6.8.2</generator>
	<item>
		<title>利用python实现对目标ip进行端口扫描</title>
		<link>https://www.from0to1.top/228.html</link>
					<comments>https://www.from0to1.top/228.html#respond</comments>
		
		<dc:creator><![CDATA[雾朦Official]]></dc:creator>
		<pubDate>Sun, 01 Oct 2023 16:48:52 +0000</pubDate>
				<category><![CDATA[编程]]></category>
		<category><![CDATA[python]]></category>
		<category><![CDATA[扫描器]]></category>
		<category><![CDATA[服务器]]></category>
		<category><![CDATA[网站]]></category>
		<guid isPermaLink="false">https://www.from0to1.top/?p=228</guid>

					<description><![CDATA[先放完整代码 import socket IP = input(&#34;请输入目标IP&#34;) start = int(input(&#34;请输入起始端口&#34;)) end = int(input(&#34;请输入结束端口&#34;)) + 1 for port in range(start, end): sock = socket.socket(socket.AF_INE [&#8230;]]]></description>
										<content:encoded><![CDATA[<p>先放完整代码</p>
<pre class="prettyprint linenums">import socket

IP = input(&quot;请输入目标IP&quot;)
start = int(input(&quot;请输入起始端口&quot;))
end = int(input(&quot;请输入结束端口&quot;)) + 1

for port in range(start, end):
    sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
    sock.settimeout(2)
    try:
        result = sock.connect_ex((IP, port))
        if result == 0:
            print(IP,&quot;:{}已放开&quot;.format(port))
            sock.close()
    except Exception as e:
        pass
</pre>
<div class="link-title wow rollIn">思路</div>
<p>导入socket模块</p>
<pre class="prettyprint linenums">import socket</pre>
<p>获取使用者输入的IP，起始端口，终止端口信息，超时时限并用四个变量分别接收，终止端口后面加一方便使用后面的range循环</p>
<pre class="prettyprint linenums">IP = input(&quot;请输入目标IP&quot;)
start = int(input(&quot;请输入起始端口&quot;))
end = int(input(&quot;请输入结束端口&quot;)) + 1
s = int(input(&quot;请输入超时时限(秒)&quot;))</pre>
<p>开始循环端口号</p>
<pre class="prettyprint linenums">for port in range(start, end):</pre>
<p>创建套接字对象</p>
<pre class="prettyprint linenums">    sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM)</pre>
<p>设置超时时限并导入使用者的输入值</p>
<pre class="prettyprint linenums">    sock.settimeout(s)</pre>
<p>因为我们不一定能成功扫到对方的某个端口，故用try语句并尝试与目标端口进行连接</p>
<pre class="prettyprint linenums">    try:
        result = sock.connect_ex((IP, port))</pre>
<p>加入if语句，如果连接成功，打印ip＋端口号，然后关闭套接字对象</p>
<pre class="prettyprint linenums">        if result == 0:
            print(IP,&quot;:{}已放开&quot;.format(port))
            sock.close()</pre>
<p>如果连接失败，则直接开始下一次循环</p>
<pre class="prettyprint linenums">    except Exception as e:
        pass</pre>
]]></content:encoded>
					
					<wfw:commentRss>https://www.from0to1.top/228.html/feed</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
	</channel>
</rss>
