Update app.py
Browse files
app.py
CHANGED
@@ -2,7 +2,6 @@ import streamlit as st
|
|
2 |
import pandas as pd
|
3 |
import requests
|
4 |
import base64
|
5 |
-
import re
|
6 |
|
7 |
def get_backlinks(api_login, api_key, target_url, filters):
|
8 |
# Encoding credentials
|
@@ -75,7 +74,7 @@ api_login = st.sidebar.text_input("API Login", value="[email protected]
|
|
75 |
api_key = st.sidebar.text_input("API Key", type="password")
|
76 |
|
77 |
# Filters input
|
78 |
-
|
79 |
is_lost = st.sidebar.checkbox("Is Lost", value=False)
|
80 |
dofollow = st.sidebar.checkbox("Dofollow", value=True)
|
81 |
backlink_spam_score = st.sidebar.slider("Backlink Spam Score ≤", 0, 100, 10)
|
@@ -85,15 +84,10 @@ is_broken = st.sidebar.checkbox("Is Broken", value=False)
|
|
85 |
# Prepare filters for API call
|
86 |
filters = []
|
87 |
|
88 |
-
if
|
89 |
-
|
90 |
-
|
91 |
-
|
92 |
-
filters.append(["url_from", "not_like", url])
|
93 |
-
filters.append("or")
|
94 |
-
# Remove the last "or" if it's the last element
|
95 |
-
if filters[-1] == "or":
|
96 |
-
filters.pop()
|
97 |
|
98 |
if is_lost:
|
99 |
filters.append(["is_lost", "=", is_lost])
|
@@ -107,12 +101,12 @@ if is_broken:
|
|
107 |
filters.append(["is_broken", "=", is_broken])
|
108 |
filters.append("and")
|
109 |
|
110 |
-
page_from_rank_operator = st.sidebar.selectbox("Page From Rank Operator", ['
|
111 |
page_from_rank_value = st.sidebar.number_input("Page From Rank Value", value=0)
|
112 |
filters.append(["page_from_rank", page_from_rank_operator, page_from_rank_value])
|
113 |
filters.append("and")
|
114 |
|
115 |
-
domain_from_rank_operator = st.sidebar.selectbox("Domain From Rank Operator", ['
|
116 |
domain_from_rank_value = st.sidebar.number_input("Domain From Rank Value", value=0)
|
117 |
filters.append(["domain_from_rank", domain_from_rank_operator, domain_from_rank_value])
|
118 |
filters.append("and")
|
@@ -125,8 +119,6 @@ filters.append(["page_from_language", "=", page_from_language])
|
|
125 |
if filters and filters[-1] == "and":
|
126 |
filters.pop()
|
127 |
|
128 |
-
st.write("Final Filters: ", filters) # For debugging, to see the final structure of filters
|
129 |
-
|
130 |
# Main app layout
|
131 |
col1, col2 = st.columns(2)
|
132 |
|
|
|
2 |
import pandas as pd
|
3 |
import requests
|
4 |
import base64
|
|
|
5 |
|
6 |
def get_backlinks(api_login, api_key, target_url, filters):
|
7 |
# Encoding credentials
|
|
|
74 |
api_key = st.sidebar.text_input("API Key", type="password")
|
75 |
|
76 |
# Filters input
|
77 |
+
url_from_not_contain = st.sidebar.text_input("URL from does not contain (comma-separated)")
|
78 |
is_lost = st.sidebar.checkbox("Is Lost", value=False)
|
79 |
dofollow = st.sidebar.checkbox("Dofollow", value=True)
|
80 |
backlink_spam_score = st.sidebar.slider("Backlink Spam Score ≤", 0, 100, 10)
|
|
|
84 |
# Prepare filters for API call
|
85 |
filters = []
|
86 |
|
87 |
+
if url_from_not_contain:
|
88 |
+
for url in url_from_not_contain.split(','):
|
89 |
+
filters.append(["url_from", "not_like", url.strip()])
|
90 |
+
filters.append("and")
|
|
|
|
|
|
|
|
|
|
|
91 |
|
92 |
if is_lost:
|
93 |
filters.append(["is_lost", "=", is_lost])
|
|
|
101 |
filters.append(["is_broken", "=", is_broken])
|
102 |
filters.append("and")
|
103 |
|
104 |
+
page_from_rank_operator = st.sidebar.selectbox("Page From Rank Operator", ['<', '<=', '>', '>=', '=', '<>', 'in', 'not_in'])
|
105 |
page_from_rank_value = st.sidebar.number_input("Page From Rank Value", value=0)
|
106 |
filters.append(["page_from_rank", page_from_rank_operator, page_from_rank_value])
|
107 |
filters.append("and")
|
108 |
|
109 |
+
domain_from_rank_operator = st.sidebar.selectbox("Domain From Rank Operator", ['<', '<=', '>', '>=', '=', '<>', 'in', 'not_in'])
|
110 |
domain_from_rank_value = st.sidebar.number_input("Domain From Rank Value", value=0)
|
111 |
filters.append(["domain_from_rank", domain_from_rank_operator, domain_from_rank_value])
|
112 |
filters.append("and")
|
|
|
119 |
if filters and filters[-1] == "and":
|
120 |
filters.pop()
|
121 |
|
|
|
|
|
122 |
# Main app layout
|
123 |
col1, col2 = st.columns(2)
|
124 |
|