مرحباً شبيب الصراحة بما أن ظهور الصفحات في التصانيف يأخذ وقتاً طويلاً فقلت لنفسي لماذا لا نحصل على النتائج بواسطة استعلام SQL بشكل أسرع دون هذا العناء.
USE arwiki_p;
select DISTINCT concat("",p1.page_title, '') as pagename
from page p1 , categorylinks , page p2
where p1.page_id = cl_from
AND p1.page_is_redirect = 0 -- no redirects
#AND p1.page_namespace = 0
AND cl_to = "بوابة_السعودية/مقالات_متعلقة"
#and not exists (select pp.page_title from page pp where pp.page_namespace = 1 and pp.page_title = p1.page_title )
and p1.page_title = p2.page_title
and p2.page_namespace = 1
AND p2.page_id not in (
SELECT tl_from
FROM templatelinks
#WHERE tl_from = p2.page_id
WHERE tl_namespace = 10
AND tl_title = "مشروع_ويكي_السعودية"
#limit 1
)
limit 20000
USE arwiki_p;
select DISTINCT concat("",p1.page_title, '') as pagename
from page p1 , categorylinks
where p1.page_id = cl_from
AND p1.page_is_redirect = 0 -- no redirects
# page_namespace : 0 , 4 , 10 , 14 , 101 , 829
AND p1.page_namespace = 0
AND cl_to = "بوابة_السعودية/مقالات_متعلقة"
and not exists (select pp.page_title
from page pp
# talk_ns : 1 , 5 , 11 , 15 , 101 , 829
where pp.page_namespace = 1
and pp.page_title = p1.page_title
)
limit 20000